mutter/src/tests/clutter/conform
Robert Mader b5a59ec109 tests/clutter/event-delivery: Avoid race with stage update
`clutter_actor_destroy()` queues a stage update. Under certain
circumstances - i.e. when run in a very slow container - this can race
with the stage update triggered by the following
`clutter_virtual_input_device_notify_button()`, occasionally resulting in
`wait_stage_updated()` to return before the
`on_event_return_propagate()` callbacks ran, making the test fail.

This notably became more common since

8f27ebf87e (clutter/frame-clock: Start next update ASAP after idle period)

landed.

Thus wait for a stage update to happen after `clutter_actor_destroy()`,
preventing the race.

Fixes: f6da583d06 (tests/clutter/event-delivery: Add tests for implicit grabbing)
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3332>
2023-10-18 08:01:42 +02:00
..
scripts clutter: Remove deprecated BoxLayout pack-start property 2023-08-07 19:30:34 +00:00
actor-clone.c clutter: Paint views with individual frame clocks 2020-07-02 19:36:51 +02:00
actor-color-state.c tests/clutter: Add color state conform tests 2022-06-09 15:00:07 +00:00
actor-destroy.c tests: Replace ClutterRectangle with ClutterActor 2020-06-27 13:35:46 +00:00
actor-event-hold.c tests: Port faked events to new constructors 2023-08-08 04:02:54 +02:00
actor-graph.c tests/clutter/conform: Default to print test logs 2020-06-05 21:39:26 +00:00
actor-invariants.c clutter: Remove deprecated macros usage 2023-08-07 19:30:34 +00:00
actor-iter.c tests/clutter/conform: Default to print test logs 2020-06-05 21:39:26 +00:00
actor-layout.c tests/clutter/conform: Make sure to destroy created actors 2020-08-13 17:51:56 +02:00
actor-meta.c tests: Move clutter-test-utils.[ch] to src/tests 2019-08-24 08:59:08 +00:00
actor-offscreen-redirect.c tests: Use ClutterStage "after-paint" instead of ClutterActor "paint" 2020-10-23 22:06:58 +02:00
actor-paint-opacity.c tests/clutter/conform: Make sure to destroy created actors 2020-08-13 17:51:56 +02:00
actor-pick.c Remove checks for GLSL 2022-06-03 12:57:31 +00:00
actor-pivot-point.c tests/conform/actor-pivot-point: Show stage before allocating 2020-10-20 15:27:43 +00:00
actor-shader-effect.c clutter: Pass 'ClutterFrame' in all stage update signals 2023-01-23 15:57:50 +01:00
actor-size.c tests/clutter/conform: Default to print test logs 2020-06-05 21:39:26 +00:00
binding-pool.c clutter: Update ClutterActorClass event vmethods to use ClutterEvent 2023-08-09 11:53:18 +00:00
cally-text.c tests/clutter: Always use stage from backend 2020-08-13 17:51:56 +02:00
color.c tests/clutter/conform: Default to print test logs 2020-06-05 21:39:26 +00:00
event-delivery.c tests/clutter/event-delivery: Avoid race with stage update 2023-10-18 08:01:42 +02:00
frame-clock-timeline.c tests/clutter/frame-clock*: Use clutter_frame_get_target_presentation_time 2023-10-17 19:09:10 +02:00
frame-clock.c tests/clutter/frame-clock*: Use clutter_frame_get_target_presentation_time 2023-10-17 19:09:10 +02:00
grab.c tests: Use ClutterEvent getter methods 2023-08-08 04:11:13 +02:00
interval.c tests/clutter/conform: Default to print test logs 2020-06-05 21:39:26 +00:00
meson.build tests: Introduce and use a custom test shell 2023-08-16 15:34:46 +00:00
path.c clutter: Drop unnused cairo specific APIs 2023-06-01 16:10:13 +00:00
script-parser.c cleanup: Stop translating nick/blurb for pspecs 2023-07-19 11:33:59 +00:00
text-cache.c tests/clutter: Always use stage from backend 2020-08-13 17:51:56 +02:00
text.c tests: Port faked events to new constructors 2023-08-08 04:02:54 +02:00
texture-fbo.c tests/clutter: Always use stage from backend 2020-08-13 17:51:56 +02:00
timeline-interpolate.c tests/clutter/timeline-interpolate: Use correct clock 2021-03-08 14:37:00 +00:00
timeline-progress.c clutter/timeline: Deprecate timelines without an actor or frame clock 2020-07-02 19:36:50 +02:00
timeline-rewind.c tests/clutter: Always use stage from backend 2020-08-13 17:51:56 +02:00
timeline.c tests/clutter/timeline: Always print progress to stderr 2020-11-09 16:12:35 +00:00
units.c tests: Move clutter-test-utils.[ch] to src/tests 2019-08-24 08:59:08 +00:00