gdiplus: graphics tests [try2]
Stefan Dösinger
stefan at codeweavers.com
Fri Jun 15 15:18:34 CDT 2007
Am Freitag, 15. Juni 2007 22:02 schrieb Jan Zerebecki:
> On Fri, Jun 15, 2007 at 01:36:09PM +0200, Alexandre Julliard wrote:
> > "Evan Stade" <estade at gmail.com> writes:
> > > +static const INT drawline_bmp1[192] =
> > > +{0xffffffff,0xffffffff,0xffffffff,0xffffffff,0xffffffff,0xffffffff,0xf
> > >fffffff,
> >
> > I don't think we want to do that sort of thing. We can't guarantee
> > that the results will be exact pixel for pixel, and we don't really
> > care. And even if we did, hardcoding the image in the source this way
> > is unmaintainable.
> >
> > If you want to check the results, you should write an app that draws
> > various things and check it visually against Windows, but I don't
> > think that's something that can be part of the regression test suite.
>
> We already have visual tests in e.g. dlls/d3d9/tests/visual.c . I
> suppose similar tests are acceptable for gdiplus?
The d3d tests do not check the exact rendering results. Most of the time they
test between two extremes, like light on and off, by drawing something that
has extreme results in both cases, like complete black, or complete red. That
result affects a big rectangle on the screen usually, like 1/4th or the
entire screen.
Those tests do not depend on pixel exactness, and they don't test the visual
result really. They rather check the result of a formula, or if an effect is
active. But due to the nature of 3D rendering the only way to test this is to
read back from the screen.
Currently the visual test hardcodes exact color values(with the exception of
the fog test), just because it worked and its easier than fuzzy color
matching. But the tests do not depend in any way if the resulting color is
0x0000ff00 or 0x0000ee00 or 0x0010f005, as long as its not very far from the
expected results. Also usually 100 and more pixels position displacement are
ok, except of the texbem test, which was written to test bump mapping which
operates in rather small dimensions.
More information about the wine-devel
mailing list