Commit Graph

10 Commits

Author SHA1 Message Date
Michel Dänzer d5ef57f1ef test: Skip Xwayland test early if PIGLIT_DIR / XTEST_DIR isn't set
No point starting weston and waiting for it to start up in that case.
2023-10-09 14:22:19 +00:00
Michel Dänzer 129ec1cb84 test: Propagate Xwayland stdout/stderr output and exit status
If waiting for weston to start times out. This should make it easier
to diagnose issues.
2023-10-09 14:22:19 +00:00
Michel Dänzer e58203c1e2 test: Kill weston whenever shell exits
This script runs with -e, so if the timeout command returns a non-0
exit status (meaning the while loop timed out), the script exits
immediately as well.

This would leave weston running in the background, which resulted in
meson waiting for weston to terminate until hitting meson's own timeout.

Instead, explicitly kill weston whenever the shell exits. This results
in meson recording the test as failed immediately.

As a bonus, we can drop the special handling around run-piglit.sh.

v2:
* Use trap (José Expósito)
v3:
* Explicitly use bash, and document a bashism we rely on
  (Olivier Fourdan)
2023-10-09 14:22:19 +00:00
Michel Dänzer 3e938ed042 test: Wait only up to 5 seconds for weston to start up
This should be plenty even on CI, no need to wait for a whole minute if something
goes wrong.
2023-10-09 14:22:19 +00:00
José Expósito 722e464bff test: Xwayland doesn't start when another X server is running
When running the xserver:xwayland / XTS test in an environment where
an X server is running for :0, Xwayland fails to start with error:

    (EE)
    Fatal server error:
    (EE) Server is already active for display 0
        If this server is no longer running, remove /tmp/.X0-lock
        and start again.
    (EE)

And the `timeout` command fails instead of waiting for Weston to
initialize.

Add the `-displayfd` parameter to Xwayland to avoid this issue.

The `-displayfd` parameter lets Xwayland pick an unused display number,
avoiding the start up error when an X server is already active for :0,
the default display number.

Suggested-by: Michel Dänzer <mdaenzer@redhat.com>
Signed-off-by: José Expósito <jexposit@redhat.com>
2023-09-27 11:59:53 +02:00
José Expósito 8cce7f5d64 test: Use Xwayland instead of wayland/weston-info
When neither `wayland-info` nor `weston-info` are installed, the
`xwayland-piglit.sh` script will wait indefinitely for the compositor
to start.

Use `Xwayland -pogo` instead to wait until weston is initialized.

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1536
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Signed-off-by: José Expósito <jexposit@redhat.com>
2023-09-04 15:18:19 +00:00
Olivier Fourdan fc625fe172 test: Use either wayland-info or weston-info
weston-info has been deprecated for quite some time, whereas wayland-info
may not be available yet.

So we use either, depending on what's actually available.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
2023-03-22 14:31:39 +01:00
Michel Dänzer 861f7e9d92 test: Exclude two XTS xsetfontpath tests
They start failing after rebuilding the docker image. It's not clear
why, but looks like it's triggered by changes in Debian bullseye.
2022-09-02 14:49:08 +02:00
Olivier Fourdan f37d11cd96 xwayland/test: Don't catch errors in run-piglit.sh
The xwayland-piglit.sh script spawns weston, runs run-piglit.sh and
finally kills weston.

However, this whole script is running with “-e” meaning that any error
will cause the script to exit immediately.

As a result, if run-piglit.sh exits with a non-zero code such as 77 for
skipping the test, the script will exit prematurely leaving weston
running, and meson will simply wait until the timeout kicks in, and
fail eventually instead of skipping the test as it should.

Fix this by removing the option to exit immediately prior to spawn the
script run-piglit.sh.

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1204
Suggested-by: Michel Dänzer <mdaenzer@redhat.com>
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
2021-10-21 11:26:47 +02:00
Michel Dänzer 250db8708a xwayland: Add and hook up test script
It runs XTS via piglit on (non-rootless) Xwayland on weston using the
headless backend.

Xwayland might use glamor if enabled in the build, but we're making sure
it uses software rendering.

v2:
* Use weston-info to wait for weston to be ready, instead of just a
  fixed sleep. (Martin Peres)
v3:
* Build wayland 1.18 & weston 9.0 locally, since the packages in Debian
  buster are too old for current Xwayland.

Acked-by: Olivier Fourdan <ofourdan@redhat.com>
2020-11-17 18:21:37 +01:00