Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8015602: [macosx] Test javax/swing/SpringLayout/4726194/bug4726194.java fails on MacOSX #872

Closed
wants to merge 2 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
57 changes: 37 additions & 20 deletions test/jdk/javax/swing/SpringLayout/4726194/bug4726194.java
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
Expand All @@ -25,13 +25,22 @@
* @test
* @bug 4726194 7124209
* @summary Tests for 4726194
* @author Phil Milne
*/
import java.awt.*;
import java.lang.reflect.InvocationTargetException;
import java.util.*;

import java.awt.Font;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.swing.*;

import javax.swing.BorderFactory;
import javax.swing.JTextField;
import javax.swing.Spring;
import javax.swing.SpringLayout;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;

import static javax.swing.UIManager.getInstalledLookAndFeels;

public class bug4726194 {

Expand All @@ -40,22 +49,29 @@ public class bug4726194 {
private static int[] FAIL = new int[3];
private static boolean TEST_DUPLICATES = false;

public static void main(String[] args) {
try {
SwingUtilities.invokeAndWait(new Runnable() {
@Override
public void run() {
int minLevel = 2;
int maxLevel = 2;
for (int i = minLevel; i <= maxLevel; i++) {
test(i, true);
test(i, false);
}
public static void main(String[] args) throws Exception {
for (final UIManager.LookAndFeelInfo laf : getInstalledLookAndFeels()) {
SwingUtilities.invokeAndWait(() -> setLookAndFeel(laf));
SwingUtilities.invokeAndWait(() -> {
int minLevel = 2;
int maxLevel = 2;
for (int i = minLevel; i <= maxLevel; i++) {
test(i, true);
test(i, false);
}
});
} catch (InterruptedException | InvocationTargetException ex) {
ex.printStackTrace();
throw new RuntimeException("FAILED: SwingUtilities.invokeAndWait method failed!");
}
}

private static void setLookAndFeel(UIManager.LookAndFeelInfo laf) {
try {
System.out.println("LookAndFeel: " + laf.getClassName());
UIManager.setLookAndFeel(laf.getClassName());
} catch (UnsupportedLookAndFeelException ignored){
System.out.println("Unsupported LookAndFeel: " + laf.getClassName());
} catch (ClassNotFoundException | InstantiationException |
IllegalAccessException e) {
throw new RuntimeException(e);
}
}

Expand All @@ -64,6 +80,7 @@ public static void test(int level, boolean horizontal) {
String[] constraints = horizontal ? hConstraints : vConstraints;
test(level, constraints, result, Arrays.asList(new Object[level]));
JTextField tf = new JTextField("");
tf.setBorder(BorderFactory.createEmptyBorder());
tf.setFont(new Font("Dialog", Font.PLAIN, 6));
System.out.print("\t\t");
for (int j = 0; j < constraints.length; j++) {
Expand Down