Hello,

Please review a fix for the issue:

8004693 - TEST_BUG: java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_Swing.java fails

The webrev is http://cr.openjdk.java.net/~kshefov/8004693/webrev.00/

This test is broken.

The test tells the AWT EventQueue to run the method DefaultPolicyChange_Swing.runTestSwing() (which contains all the actual test code) at a later time (EventQueue.invokeLater(Runnable)). By adding a few printlns to that function, it's easy to see that it starts to run but never finishes. In particular, it never reaches any of the actual test code.

First, "((SunToolkit) SunToolkit.getDefaultToolkit()).realSync();" should be added after EventQueue.invokeLater() call for all procedures in this call to be run.

After this test starts to fail. It fails since jdk 7 fcs.

The fail is caused because test is corrupted.

The test should compare JFrame, JWindow and JDialog FocusTraversalPolicies before "currentKFM.setDefaultFocusTraversalPolicy(newFTP)" call and after this call. But instead the test compares something different.

In the current variant of this test we see:

FocusTraversalPolicy defaultFTP = currentKFM.getDefaultFocusTraversalPolicy();

It returns object java.awt.DefaultFocusTraversalPolicy@5fe2d461.

But JFrame, JWindow and JDialog objects initially have "javax.swing.LayoutFocusTraversalPolicy@2f81dd44" policy. After "currentKFM.setDefaultFocusTraversalPolicy(newFTP)" call they still have javax.swing.LayoutFocusTraversalPolicy@2f81dd44.

So test should not fail, but it fails.

Test needs to be fixed.

Thanks,
Konstantin

Reply via email to