[PATCH v1 weston 00/11] Headless rendering testing

Pekka Paalanen ppaalanen at gmail.com
Mon Nov 24 03:42:07 PST 2014


On Wed, 19 Nov 2014 15:06:15 -0800
Bryce Harrington <bryce at osg.samsung.com> wrote:

> This set of patches by Derek and I implement functionality to do
> screenshot-based testing of wayland.
> 
> The idea is to allow tests to render the desktop to memory using Pixman,
> apply an optional clipping mask via Cairo, and store the image to disk
> as a PNG file.  A pixel checker routine is included which just checks
> that the files are bit-for-bit equivalent.  The choice of checker is
> under the control of the test case itself, so tests that need a more
> fuzzy checker can provide one as needed.
> 
> A clipping mechanism is included to permit exclusion of areas of the
> screen the test doesn't care about.  For example, the desktop clock's
> time will vary from run to run, and thus differ from reference images so
> you can clip out a subregion that excludes it.  Clipping also makes the
> reference images smaller in git.
> 
> This patchset is intended to close the following bug reports as fixed:
> 
>     https://bugs.freedesktop.org/show_bug.cgi?id=83981
>     https://bugs.freedesktop.org/show_bug.cgi?id=83987
> 
> 
> Bryce Harrington (7):
>   configure.ac: Indicate headless compositor presence in config.h
>   compositor: Document options for headless compositor
>   tests: Add a fadein test
>   tests: Add test reference directory and images for fadein
>   tests: Add support for comparing output against reference images
>   tests: Use only a clipped portion of screenshot for comparisons
>   tests: Construct the filename external to wl_test_record_screenshot
> 
> Derek Foreman (4):
>   compositor-headless: allow rendering with pixman
>   compositor-headless: add support for transforms set on command line
>   tests: Allow tests to use customized command line parameters
>   tests: Add screenshot recording to weston-test
> 
>  Makefile.am                       |  11 +++--
>  configure.ac                      |   3 ++
>  protocol/wayland-test.xml         |   8 ++++
>  src/compositor-headless.c         |  73 +++++++++++++++++++++++++++----
>  src/compositor.c                  |  10 +++++
>  tests/fadein-test.c               |  76 ++++++++++++++++++++++++++++++++
>  tests/reference/fadein-00-0.png   | Bin 0 -> 737 bytes
>  tests/reference/fadein-01-0.png   | Bin 0 -> 3453 bytes
>  tests/reference/fadein-02-0.png   | Bin 0 -> 3499 bytes
>  tests/reference/fadein-03-0.png   | Bin 0 -> 3461 bytes
>  tests/reference/fadein-04-0.png   | Bin 0 -> 3461 bytes
>  tests/reference/fadein-05-0.png   | Bin 0 -> 3461 bytes
>  tests/weston-test-client-helper.c |  67 +++++++++++++++++++++++++++++
>  tests/weston-test-client-helper.h |  11 +++++
>  tests/weston-test-runner.c        |   8 ++++
>  tests/weston-test.c               |  88 ++++++++++++++++++++++++++++++++++++++
>  tests/weston-tests-env            |   1 +
>  17 files changed, 344 insertions(+), 12 deletions(-)
>  create mode 100644 tests/fadein-test.c
>  create mode 100644 tests/reference/fadein-00-0.png
>  create mode 100644 tests/reference/fadein-01-0.png
>  create mode 100644 tests/reference/fadein-02-0.png
>  create mode 100644 tests/reference/fadein-03-0.png
>  create mode 100644 tests/reference/fadein-04-0.png
>  create mode 100644 tests/reference/fadein-05-0.png
> 

Hi,

this is a good start, and I pushed patches 1-5. I also did some changes
to patch 4, I hope you don't mind.

On patch 6 and onwards I suggested some improvements, so I marked them
as "changes requested" in patchwork.

Btw. I think Patchwork ignored patch 8, maybe because it was a pure
binary patch.


Thanks,
pq


More information about the wayland-devel mailing list