RFR: 8159690: [TESTBUG] Mark headful tests with @key headful.
Andrew Hughes
gnu.andrew at redhat.com
Mon Feb 15 07:21:40 UTC 2021
On 20:43 Thu 12 Nov , Hohensee, Paul wrote:
> Please review this backport, which is part of the patch tail for https://icedtea.classpath.org/bugzilla/show_bug.cgi?id=3077.
>
> This is a replacement patch for the one for which a review was requested in https://mail.openjdk.java.net/pipermail/jdk8u-dev/2020-November/012922.html.
>
> JBS issue: https://bugs.openjdk.java.net/browse/JDK-8159690
> Original patch: http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/980da45565c8
> 3077 patch: http://icedtea.classpath.org//hg/icedtea8-forest/jdk?cmd=changeset;node=dcd850780adc<http://icedtea.classpath.org/hg/icedtea8-forest/jdk?cmd=changeset;node=dcd850780adc>
> Webrev: http://cr.openjdk.java.net/~phh/8159690/webrev.8u.jdk.00/
>
> As noted in a comment on the JBS issue, there are 45 tests that were in the original patch that are not in the 3077 patch because they are not present in 8u. Three more are also not in 8u but are in the 3077 patch. Other than those 3, the webrev patch is identical to the 3077 patch.
>
> The patch is not clean with respect to both the original and 3077 patches because the 48 tests are omitted, and because of various context and copyright date differences. The only substantive change is the addition of @headful, which doesn’t affect running any of the tests.
>
> Thanks,
> Paul
>
>
Looking at the omitted tests:
* test/java/awt/AppContext/ApplicationThreadsStop/ApplicationThreadsStop.java
Introduced by JDK-8136858, "Examine the usage of ThreadGroup.stop() in sun.awt.AppContext".
This is due to another change, JDK-7067728, which changed the security policy so omission
seems correct.
* test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html
Introduced by JDK-7112454, "TEST_BUG:
java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html
failed".
This is just a test case addition so not sure why it is omitted?
Could be a quick clean backport.
* test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html
Introduced by JDK-8014725:
"closed/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html
failed intermittently"
Bug inaccessible and changes AWT code so I agree with omitting this.
* test/java/awt/Cursor/GetSystemCustomCursor/GetSystemCustomCursor.java
>From JDK-8039269: images/cursors should not be in ${java.home}/lib, which
changes cursor handling so agree with omission.
* test/java/awt/Debug/DumpOnKey/DumpOnKey.java
>From JDK-4379403: "Need to disable the "magic AWT dump key" (CTRL+SHIFT+F1)"
which changes AWT code. Agree with the omission.
* test/java/awt/EventDispatchThread/PropertyPermissionOnEDT/PropertyPermissionOnEDT.java
>From JDK-8080405: "Exception in thread "AWT-EventQueue-1"
java.security.AccessControlException" which makes major threading changes.
Agree with omission.
* test/java/awt/FileDialog/ModalFocus/FileDialogModalFocusTest.java
>From JDK-8025815: "Child FileDialog of modal dialog does not get focus
on Gnome" which fixes an obscure corner case, altering AWT code. Agree
with omission.
* test/java/awt/Focus/Cause/FocusCauseTest.java
>From JDK-8080395: "consider making sun.awt.CausedFocusEvent functionality public",
a major AWT change which shouldn't be backported. Agree with omission.
* test/java/awt/Focus/FocusTraversalPolicy/ContainerOrderFTPTest.java
>From JDK-8025001: "setFocusTraversalPolicy() to
ContainerOrderFocusTraversalPolicy results in an infinite loop". This could
be a potential backport, but seems a bit risky at this late stage. Agree with
omission.
* java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java
This file is present in 8u. Seems to have been missed. It was introduced in 8u
along with JDK-8167110.
* test/java/awt/Frame/MaximizedToUnmaximized/MaximizedToUnmaximized.java
Introduced for a MacOS X bug, JDK-8065739: "Frame warps to lower left
of screen when displayed". As 8u doesn't currently build on Mac OS, seems
risky to be introducing changes to its AWT code. Ok with omission.
* test/java/awt/Frame/NonEDT_GUI_DeadlockTest/NonEDT_GUI_Deadlock.html
Ok, this is a fun one. It comes in with the change JDK-8130125:
"[TEST_BUG] add @modules to the several client tests unaffected by the
automated bulk update" though it has nothing to do with the module
addition, because three closed tests were opened up and piggybacked
onto that change [0].
I have a backport of this change without the module additions and will
propose it as a pre-requisite for this patch.
* test/java/awt/FullScreen/NonExistentDisplayModeTest/NonExistentDisplayModeTest.java
This is from JDK-7185221: "[macosx] Regtest should not throw exception if a suitable display mode found"
which opens up that test. Should be backported first.
* test/java/awt/Graphics/CopyScaledArea/CopyScaledAreaTest.java
This is from JDK-8069348: "SunGraphics2D.copyArea() does not
properly work for scaled graphics in D3D". Platform-specific changes
which seem risky to backport. Agree with omission.
* test/java/awt/List/ActionEventTest/ActionEventTest.java
This is from JDK-6191390: "Action Event triggered by list does not
reflect the modifiers properly on win32". Windows-specific issue which
changes AWT behaviour. Agree with omission.
* test/java/awt/List/FocusEmptyListTest/FocusEmptyListTest.html
This is from JDK-8136592: "[TEST_BUG] Fix 2 platform-specific closed regtests for jigsaw"
which opens up the test. I think this could be included.
* test/java/awt/List/ItemEventTest/ItemEventTest.java
This is from JDK-8033936: "java.awt.List events are not sent properly to handleEvent or ItemListener",
which is a one-line Windows fix with test. I think this could be included.
* test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersInKeyEvent.java
This is from JDK-8143054: "[macosx] KeyEvent modifiers do not contain information about mouse buttons",
a MacOS behavioural fix. Ok with omission.
* test/java/awt/Mouse/MouseWheelAbsXY/MouseWheelAbsXY.java
This is from JDK-6778087: "getLocationOnScreen() always returns (0, 0) for mouse wheel events"
which is a fairly simple fix to retrieve the missing values rather than hardcoding 0, 0. I
think this could be included.
* test/java/awt/MouseInfo/GetPointerInfoTest.java
This file is present in 8u. Seems to have been missed. It was introduced in JDK-8035568.
* test/java/awt/MouseInfo/MultiscreenPointerInfo.java
Also in 8u as part of JDK-8035568.
* test/java/awt/MouseInfo/PointerInfoCrashTest.java
This is from JDK-8143316: "Crash Trend in 1.9.0-ea-b93 (sun.awt.DefaultMouseInfoPeer.fillPointWithCoords)"
Windows-specific change with a private bug. Ok to omit.
* test/java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java
Present in 8u from JDK-8139581: "AWT components are not drawn after
removal and addition to a container" (8u102) so should be added.
* test/java/awt/Robot/RobotWheelTest/RobotWheelTest.java
Test opened up in JDK-8079255: "[TEST_BUG] [macosx] Test
closed/java/awt/Robot/RobotWheelTest/RobotWheelTest fails for Mac
only" with no code changes so could be included.
* test/java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java
>From JDK-6180449: "PIT: Text in TextArea scrolls to its left one char
when selecting the text from the end". Removes part of a Windows code
fix with no clear explanation of why. Test is then problematic
on other platforms (JDK-8160764) Ok to omit.
* test/java/awt/TextField/EOLTest/EOLTest.java
>From JDK-8055197: "TextField deletes multiline strings". Significant
behavioural change so ok to omit.
* test/java/awt/Toolkit/GetSizeTest/GetScreenSizeTest.java
>From JDK-8144074: "[PIT] Crash calling Toolkit.getScreenSize() on Windows".
Windows fix which avoids a crash. Cause of crash seems to be JDK-8073320
which is not in 8u, but seems a worthwhile defensive addition.
* test/java/awt/Window/FindOwner/FindOwnerTest.html
>From JDK-8139227: "Text fields in JPopupMenu structure do not receive focus in hosted Applets".
Behaviour change for applets on Windows. Ok to omit.
* test/java/awt/Window/MultiWindowApp/MultiWindowAppTest.java
>From JDK-8022334: "After calling frame.toBack() dialog goes to the back on Ubuntu 12.04"
Changes result of WMClass() for XWindow. Seems safest to omit.
* test/java/awt/Window/ScreenLocation/ScreenLocationTest.java
>From JDK-8011616: "JWindow.getLocation and JWindow.getLocationOnScreen return different values on Unity"
Behavioural change so seems safest to omit.
* test/java/awt/applet/Applet/AppletFlipBuffer.java
>From JDK-8130390: "Applet fails to launch on virtual desktop"
Behavioural change so seems safest to omit.
* test/java/awt/datatransfer/ConstructFlavoredObjectTest/ConstructFlavoredObjectTest.java
>From JDK-8142968: "Module System implementation" so fine to omit.
* test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java
>From JDK-8041464: "[TEST_BUG] CustomClassLoaderTransferTest does not support OS X" which
actually seems to open up this test so could be included.
* test/java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java
Also from JDK-8142968, so fine to omit.
* test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html
Should now be included as you backported JDK-8046221 :-)
* test/java/awt/dnd/Button2DragTest/Button2DragTest.java
Backporting the test cleanup JDK-7124381:
"DragSourceListener.dragDropEnd() never been called on completion of
dnd operation" might be worthwhile.
* test/java/awt/font/Underline/UnderlineTest.java
See comment above about JDK-8130125; it strikes again.
* test/java/awt/hidpi/properties/HiDPIPropertiesUnixTest.java
>From JDK-8150844: "[hidpi] [macosx] -Dsun.java2d.uiScale should be
taken into account for OS X". Relies on HiDPI changes which aren't
generally in 8u so ok to omit.
* test/java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java
Seems to be missing a copyright header update.
* test/java/awt/image/DrawImage/IncorrectUnmanagedImageSourceOffset.java
Present in 8u (JDK-8029253) but seems to have been missed.
* test/java/awt/image/DrawImage/ScaledImageAlphaTest.java
>From JDK-8139183: "drawImage misses background's alpha channel".
Behaviour change that seems a little risky to backport.
* test/java/awt/image/VolatileImage/BitmaskVolatileImage.java
Major change in JDK-7188942: "Remove support of pbuffers in OGL Java2d pipeline",
a closed bug. Ok to omit.
* test/java/awt/image/VolatileImage/VolatileImageBug.java
Now present in 8u thanks to JDK-8159495: "Fix index offsets"
* test/java/awt/image/multiresolution/MultiresolutionIconTest.java
>From JDK-8150724: "[TEST] HiDPI: create a test for multiresolution icons",
can be included.
* test/java/awt/print/PageFormat/NullPaper.java
Now present in 8u as of 8u292-b01 and JDK-8038723.
* test/java/awt/print/PageFormat/ReverseLandscapeTest.java
Likewise introduced by JDK-8038723.
* test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java
Introduced by JDK-8041490: "PIT: [macosx] Crash in system tray functionality check test"
which fixes a crash. Seems like a good check to backport.
* test/javax/swing/SwingUtilities/8049533/bug8049533.java
>From JDK-8049533: "SwingUtilities.convertMouseEvent misses MouseWheelEvent.preciseWheelRotation"
Behaviour change it is safest to omit.
* test/sun/java2d/OpenGL/CopyAreaOOB.java
JDK-7131835: "[TEST_BUG] Test does not consider that the rounded edges
of the window in Mac OS 10.7" opens up this test which can be included.
* test/sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java
JDK-6345095: "regression test EmptyClipRenderingTest fails" opens up
this test which could be included.
* test/sun/java2d/SunGraphics2D/SurfaceDestination/SurfaceDestination.java
>From JDK-8134603: "Incorrect destination is used in CGLLayer surface", Mac OS
X behaviour change probably safest to omit.
Summary:
* JDK-7112454, JDK-7185221, JDK-8136592, JDK-8079255, JDK-8041464, JDK-8150724, JDK-7131835, JDK-6345095
All introduce missing tests in isolation and could be easily backported
(possibly clean, may need removal of @modules lines)
* JDK-8033936, JDK-6778087, JDK-8073320 & JDK-8041490 are trivial backports it would be good to fix
The first two add missing information. The second two protect against crashes.
* I'll propose my existing backport of JDK-8130125 tomorrow, which adds a couple of missing tests.
* Optional: JDK-7124381.
* Update patch with:
- test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html (JDK-7112454)
- java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java (missed)
- test/java/awt/Frame/NonEDT_GUI_DeadlockTest/NonEDT_GUI_Deadlock.html (JDK-8130125)
- test/java/awt/FullScreen/NonExistentDisplayModeTest/NonExistentDisplayModeTest.java (JDK-7185221)
- test/java/awt/List/FocusEmptyListTest/FocusEmptyListTest.html (JDK-8136592)
- test/java/awt/List/ItemEventTest/ItemEventTest.java (JDK-8033936)
- test/java/awt/Mouse/MouseWheelAbsXY/MouseWheelAbsXY.java (JDK-6778087)
- test/java/awt/MouseInfo/GetPointerInfoTest.java (missed)
- test/java/awt/MouseInfo/MultiscreenPointerInfo.java (missed)
- test/java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java (missed)
- test/java/awt/Robot/RobotWheelTest/RobotWheelTest.java (JDK-8079255)
- test/java/awt/Toolkit/GetSizeTest/GetScreenSizeTest.java (JDK-8073320)
- test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java (JDK-8041464)
- test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html (missed)
- test/java/awt/font/Underline/UnderlineTest.java (JDK-8130125)
- test/java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java (missing copyright header update)
- test/java/awt/image/DrawImage/IncorrectUnmanagedImageSourceOffset.java (missed)
- test/java/awt/image/VolatileImage/VolatileImageBug.java (missed)
- test/java/awt/image/multiresolution/MultiresolutionIconTest.java (JDK-8150724)
- test/java/awt/print/PageFormat/NullPaper.java (recently introduced)
- test/java/awt/print/PageFormat/ReverseLandscapeTest.java (recently introduced)
- test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java (JDK-8041490)
- test/sun/java2d/OpenGL/CopyAreaOOB.java (JDK-7131835)
- test/sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java (JDK-6345095)
[0] https://mail.openjdk.java.net/pipermail/awt-dev/2015-July/009588.html
Thanks,
--
Andrew :)
Senior Free Java Software Engineer
OpenJDK Package Owner
Red Hat, Inc. (http://www.redhat.com)
PGP Key: ed25519/0xCFDA0F9B35964222 (hkp://keys.gnupg.net)
Fingerprint = 5132 579D D154 0ED2 3E04 C5A0 CFDA 0F9B 3596 4222
More information about the jdk8u-dev
mailing list