On Wed, 9 Nov 2022 18:05:22 GMT, Andy Goryachev <ango...@openjdk.org> wrote:

>> Issue happening on some hardware due to slightly different pixel values 
>> being returned.
>> 
>> Increased tolerance of asserts in compareColor function to allow these tests 
>> to pass (0.01 delta is still tighter than other similar tests which use 
>> 0.07).
>
> tests/system/src/test/java/test/robot/javafx/scene/PixelBufferDrawTest.java 
> line 189:
> 
>> 187: 
>> 188:     private void compareColor(Color exp, Color act) {
>> 189:         Assert.assertEquals(exp.getRed(), act.getRed(), 0.01);
> 
> I am curious: what is the source of these differences?
> Is it color model (and could we explicitly set the CM?)
> Or is it differences in anti-aliasing or some such?

It's a good question, but I note that any number of things can cause such 
differences on some systems. As I mentioned in the bug report, most of our 
robot-based tests use `0.07` as a tolerance value. The idea being that these 
tests aren't trying to check whether the rendering is pixel perfect or that the 
shaders, etc., produce an exact value. They are just checking whether the pixel 
is red versus green versus orange, etc.

-------------

PR: https://git.openjdk.org/jfx/pull/944

Reply via email to