Are there automated tests that verify that Wine's drawing operations produce the same visual output as in Windows?
Ken Thomases
ken at codeweavers.com
Sun Jul 13 12:09:52 CDT 2014
On Jul 13, 2014, at 11:39 AM, Alexander Almaleh <sashoalm at gmail.com> wrote:
> While testing the Polygon() function for my bug report - https://bugs.winehq.org/show_bug.cgi?id=36891, 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.
-Ken
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20140713/a072c09c/attachment.html>
More information about the wine-devel
mailing list