RFR: 8276058: Some swing test fails on specific CI macos system [v3]
Phil Race
prr at openjdk.java.net
Mon Mar 7 18:05:10 UTC 2022
On Fri, 29 Oct 2021 06:43:38 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:
>> As per JDK-8252813, some tests fails recurringly in CI macos system. This is an attempt to fix the swing tests.
>> It was seen from the logs that we have color mismatch in these tests.
>>
>> For example, in PressedIcon test, we had following log
>>
>> ----------System.out:(1/75)----------
>> color java.awt.Color[r=55,g=55,b=55] COLOR_1Xjava.awt.Color[r=255,g=0,b=0]
>> ----------System.err:(13/842)----------
>> java.lang.RuntimeException: Colors is different for scale=1!
>> at PressedIconTest.main(PressedIconTest.java:97)
>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:76)
>> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:51)
>> at java.base/java.lang.reflect.Method.invoke(Method.java:569)
>> at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
>> at java.base/java.lang.Thread.run(Thread.java:833)
>>
>> and JInternalFrame test, we had
>> ----------System.err:(15/939)----------
>> FRAME_COLOR Red: 255; Green: 200; Blue: 0
>> Pixel color Red: 55; Green: 55; Blue: 55
>> java.lang.RuntimeException: Internal frame is not correctly dragged!
>> at bug8069348.main(bug8069348.java:96)
>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:76)
>> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:51)
>> at java.base/java.lang.reflect.Method.invoke(Method.java:569)
>> at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
>> at java.base/java.lang.Thread.run(Thread.java:833)
>>
>> where color is obtained as 55,55,55 instead of required color. The png image generated at failure also did not reveal anything abnormal apart from presence of mouse cursor around the same area where the getPixelColor location is pointing to. And since mouse cursor is also grayish black, it seems robot was wrongly picking up cursor pixels instead of background color.
>> Modified tests to use location.x-10, location.y-10 to obtain the pixel color. It does not hamper the test as the whole area around the location is coloured with same color in the test so getting pixel color from a bit wide of the centre will not affect the test.
>> Modified swing tests are passing in the affected system and also in other macos systems and platforms. Link in JBS.
>>
>> The awt tests that are failing seems to have different root cause and will be handled separately.
>
> Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision:
>
> - Review fix
> - Fix
I can't see that we did but I have now.
One thing that occurred to me is that
Settings->Accessibility->Display->Shake mouse pointer to locate
is enabled by default and if our tests "warping" the pointer trigger this then maybe it could be why we see the pointer - I can imagine that the mode for large pointer isn't immediately turned off.
So disabling that setting maybe is worth adding to all our systems
-------------
PR: https://git.openjdk.java.net/jdk/pull/6140
More information about the client-libs-dev
mailing list