Are there automated tests that verify that Wine's drawing operations produce the same visual output as in Windows?

Ken Thomases ken at
Sun Jul 13 12:09:52 CDT 2014

On Jul 13, 2014, at 11:39 AM, Alexander Almaleh <sashoalm at> wrote:

> While testing the Polygon() function for my bug report -, I used a test program that performs a Polygon() operation on a memory device context, and then saves it to a bitmap - i.e. a *.bmp file.
> I then compared the bitmaps produced under Windows and Wine using a program I wrote in Qt, that just compares width/height, and then makes a pixel-by-pixel comparison (and the Polygon() function did indeed produce a slightly different bitmap).
> Since this process can be easily automated, I'm wondering if such a framework is already being used? If not, I could probably make a sample test program and image comparison tool, if anyone is interested.
> It would be fairly easily to spot all kinds of bugs in the drawing functions using such a testing system.

There are such tests.  They were central to the development of the DIB engine.  See dlls/gdi32/tests/dib.c.

The tests run under Wine or on Windows, not both in concert.  They can't directly take output from one and compare to the other.  Also, one doesn't want to store a slew of bitmaps into the tests for pixel-wise comparison.  So, the approach is to take a hash of the bitmap data and compare to a hash of a known-good bitmap.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the wine-devel mailing list