jdk-24/jdk/test/java/awt/font/TextLayout/TestSinhalaChar.java

48 lines
1.5 KiB
Java
Raw Normal View History

/* @test @(#)TestSinhalaChar.java
* @summary verify lack of crash on U+0DDD.
* @bug 6795060
*/
import javax.swing.*;
import javax.swing.border.LineBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
public class TestSinhalaChar {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new TestSinhalaChar().run();
}
});
}
public static boolean AUTOMATIC_TEST=true; // true; run test automatically, else manually at button push
private void run() {
JFrame frame = new JFrame("Test Character (no crash = PASS)");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
final JLabel label = new JLabel("(empty)");
label.setSize(400, 100);
label.setBorder(new LineBorder(Color.black));
label.setFont(new Font("Lucida Bright", Font.PLAIN, 12));
if(AUTOMATIC_TEST) { /* run the test automatically (else, manually) */
label.setText(Character.toString('\u0DDD'));
} else {
JButton button = new JButton("Set Char x0DDD");
button.addActionListener(new AbstractAction() {
public void actionPerformed(ActionEvent actionEvent) {
label.setText(Character.toString('\u0DDD'));
}
});
panel.add(button);
}
panel.add(label);
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true);
}
}