12to11/tests
hujianwei 4772d8cede Fix XDG activation in some edge cases
* 12to11-test.xml (test_manager) <activated>: Add
activator_surface parameter.

* compositor.h (enum _ClientDataType): New XdgActivationData
type.
(struct _RoleFuncs, struct _XdgRoleImplementationFuncs): Pass
activator surface in `activate'.
* seat.c (struct _Seat): New field for the serial of the last
entry event.
(SendKeyboardEnter, XLSeatCheckActivationSerial): Add
workarounds for Firefox.
* surface.c (HandleSurfaceDestroy): Allow client data
free_functions to be NULL.
* test.c (Activate): Accept and send activator surface.

* xdg_activation.c (struct _XdgActivationToken): New fields for
the surface and destroy callback.
(HandleSurfaceDestroyed): New function.
(SetSurface): Really record the activator surface.
(GetIdForSurface): New function.
(Commit): Include activator surface ID.
(HandleResourceDestroy): Destroy activator surface.
(GetSurfaceForId): New function.
(Activate): Pass activator surface whenever specified.

* xdg_surface.c (Activate):
* xdg_toplevel.c (Activate): Adjust accordingly.

* tests/xdg_activation_test.c (check_activation_with_serial):
Check activator surface as well.
(test_single_step): Fix damage rect for dummy buffer.
(handle_test_surface_activated): Record the activator surface.
2022-11-16 07:11:03 +00:00
..
argb8888_implicit.dump Check in new files for dma-buf tests 2022-11-08 11:50:09 +00:00
argb8888_linear.dump Check in new files for dma-buf tests 2022-11-08 11:50:09 +00:00
basic_damage.png Check in new test related files 2022-11-04 05:26:16 +00:00
basic_test_card.png Check in tests 2022-11-04 02:41:19 +00:00
big.png Check in files for new subsurface grow/shrink tests 2022-11-05 05:57:25 +00:00
blue.png Check in tests 2022-11-04 02:41:19 +00:00
buffer_scale_1_1.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_1_2.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_1_2_1.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_1_2_2.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_2_1.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_2_2.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_2_2_1.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
buffer_scale_2_2_2.dump Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
cow_transparent.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
damage_test.c Add test for buffer transforms 2022-11-04 07:22:57 +00:00
damage_test_1.dump Check in new test related files 2022-11-04 05:26:16 +00:00
damage_test_2.dump Check in new test related files 2022-11-04 05:26:16 +00:00
dmabuf_test.c Update dmabuf and seat tests 2022-11-09 02:12:28 +00:00
gradient.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
Imakefile Implement xdg-activation-v1 2022-11-14 06:05:23 +00:00
imgview.c Check in new viewporter test files 2022-11-04 12:21:39 +00:00
README Fix text input bugs with grabbed popups and bugs found by new tests 2022-11-12 03:51:21 +00:00
run_tests.sh Implement xdg-activation-v1 2022-11-14 06:05:23 +00:00
scale.png Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
scale_damage.png Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
scale_test.c Check in files for buffer scale tests 2022-11-05 08:12:29 +00:00
seat_child.png * tests/seat_child.png: New file. 2022-11-09 02:09:53 +00:00
seat_test.c Add new seat tests for key presses 2022-11-16 02:15:47 +00:00
seat_test.png Check in new files for seat tests 2022-11-07 06:05:08 +00:00
select_helper.c * tests/select_helper.c: Make atom_names big enough. 2022-11-13 05:46:38 +00:00
select_helper_multiple.c Check in new file for select tests 2022-11-12 08:04:52 +00:00
select_test.c Fix some minor problems 2022-11-13 13:45:11 +00:00
simple_test.c Add new damage test and unify buffer release code in xdg_surface 2022-11-04 05:36:10 +00:00
simple_test.dump Check in tests 2022-11-04 02:41:19 +00:00
small.png Check in files for new subsurface grow/shrink tests 2022-11-05 05:57:25 +00:00
subsurface_1.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_1_complex.png Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
subsurface_1_damaged.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_base.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_damage.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_stack_1.png Check in new files for subsurface tests 2022-11-15 04:27:18 +00:00
subsurface_stack_2.png Check in new files for subsurface tests 2022-11-15 04:27:18 +00:00
subsurface_test.c Add new test for role actions 2022-11-15 05:00:56 +00:00
subsurface_test_1.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_2.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_3.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_4.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_5.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_6.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_7.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_8.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_9.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_10.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_11.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_12.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_13.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_14.dump Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_test_15.dump Check in files for new subsurface grow/shrink tests 2022-11-05 05:57:25 +00:00
subsurface_test_16.dump Check in files for new subsurface grow/shrink tests 2022-11-05 05:57:25 +00:00
subsurface_test_17.dump Check in files for new subsurface grow/shrink tests 2022-11-05 05:57:25 +00:00
subsurface_test_18.dump Check in new subsurface test dumps 2022-11-05 10:44:11 +00:00
subsurface_test_19.dump Check in new subsurface test dumps 2022-11-05 10:44:11 +00:00
subsurface_test_20.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_21.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_22.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_23.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_24.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_25.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_26.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_27.dump Check in new subsurface test reference data 2022-11-06 03:22:18 +00:00
subsurface_test_28.dump Check in new test dumps 2022-11-06 05:10:28 +00:00
subsurface_test_29.dump Check in new test dumps 2022-11-06 05:10:28 +00:00
subsurface_test_30.dump Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
subsurface_test_31.dump Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
subsurface_test_32.dump Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
subsurface_test_33.dump Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
subsurface_test_34.dump Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
subsurface_test_35.dump Check in new files for subsurface tests 2022-11-15 04:27:18 +00:00
subsurface_test_36.dump Check in new files for subsurface tests 2022-11-15 04:27:18 +00:00
subsurface_test_37.dump Check in new files for subsurface tests 2022-11-15 04:27:18 +00:00
subsurface_test_38.dump Check in new files for subsurface tests 2022-11-15 04:27:18 +00:00
subsurface_test_39.dump * tests/subsurface_test_39.dump: New file. 2022-11-15 05:01:13 +00:00
subsurface_transparency.png Check in files for subsurface tests 2022-11-05 03:40:54 +00:00
subsurface_transparency_damage.png Check in new subsurface test reference data 2022-11-07 12:02:30 +00:00
svnignore.txt Implement xdg-activation-v1 2022-11-14 06:05:23 +00:00
test_harness.c Add new seat tests for key presses 2022-11-16 02:15:47 +00:00
test_harness.h Add new seat tests for key presses 2022-11-16 02:15:47 +00:00
tiny.png * tests/tiny.png: New file. 2022-11-05 03:41:20 +00:00
transform_test.c Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_90_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_90_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_180_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_180_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_270_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_270_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_90_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_90_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_180_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_180_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_270_1.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
transform_test_flipped_270_2.dump Check in new files for transform tests 2022-11-04 07:19:25 +00:00
viewport_dest_200_150_1.dump Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewport_dest_200_150_2.dump Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewport_src_50_50_200_200_1.dump Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewport_src_50_50_200_200_2.dump Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewport_src_50_50_200_200_dest_50_75_1.dump Add files for viewporter shrink test 2022-11-04 12:46:45 +00:00
viewport_src_50_50_200_200_dest_50_75_2.dump Add files for viewporter shrink test 2022-11-04 12:46:45 +00:00
viewport_src_50_50_200_200_dest_500_500_1.dump Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewport_src_50_50_200_200_dest_500_500_2.dump Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewport_src_250_50_200_200_dest_50_75_90cw_1.dump Check in files for new test 2022-11-05 06:24:22 +00:00
viewport_src_250_50_200_200_dest_50_75_90cw_2.dump Check in files for new test 2022-11-05 06:24:22 +00:00
viewporter_test.c Add viewporter tests with transforms 2022-11-05 06:25:41 +00:00
viewporter_test.png Check in new viewporter test files 2022-11-04 12:21:39 +00:00
viewporter_test_1.png Check in new viewporter test files 2022-11-04 12:21:39 +00:00
xdg_activation_test.c Fix XDG activation in some edge cases 2022-11-16 07:11:03 +00:00

This directory holds some work-in-progress code for testing the
protocol translator.  The current test suite is nowhere near
comprehensive.

Each test must be individually run on a system with an a8r8g8b8
visual, GLOBAL_SCALE and OUTPUT_SCALE set to 1.  They also rely on
reference data; if some legitimate changes are made that affect test
results, then the tests should be run with TEST_WRITE_REFERENCE=1,
which will make the test binaries write out reference data to disk.

When tests are being run, the tester must be very careful to not
interfere with the test operation by moving or resizing the test
window.  A compositing manager should be running along with the test.

These tests are supposed to test the functionality of the protocol
translator by connecting to a running instance and validating the
results of various high-level requests.  In modern parlance, they
would be ``integration tests''.

Most likely, you do not want to run these tests manually, as the
`run_tests.sh' script does all the setup for you.

Please note that the EGL renderer currently does not pass some
graphics tests, which is expected behavior, and that `select_test'
must be run with no clipboard manager (or any other clients, for that
matter) running.