package org.javabuilders.swing.plugins.glazedlists.test; import static org.junit.Assert.*; import java.util.ArrayList; import java.util.Comparator; import java.util.List; import javax.swing.JButton; import org.javabuilders.swing.plugin.glazedlists.compiler.CompilerUtils; import org.junit.Test; /** * Tests the in-memory compiler * @author jacek * */ public class CompilerUtilsTest { @Test public void testUniqueClassNameGenerator() { List<String> names = new ArrayList<String>(); for(int i = 0; i < 1000;i++) { String name = CompilerUtils.generateClassName(Comparator.class); assertFalse(names.contains(name)); names.add(name); } } @Test public void testPropertiesComparator() { Comparator<JButton> c = (Comparator<JButton>) CompilerUtils.newComparator(JButton.class, "text","toolTipText"); JButton b1 = new JButton("Text1"); b1.setToolTipText("Tip1"); JButton b11 = new JButton("Text1"); b11.setToolTipText("Tip1"); JButton b2 = new JButton("Text2"); b2.setToolTipText("Tip1"); JButton b22 = new JButton("Text2"); b2.setToolTipText("Tip2"); assertEquals(0,c.compare(b1, b1)); assertEquals(0,c.compare(b1, b11)); assertFalse(c.compare(b1,b2) == 0); assertFalse(c.compare(b1,b22) == 0); } @Test public void testObjectComparator() { Comparator<String> c = (Comparator<String>) CompilerUtils.newComparator(String.class); String s1 = "1"; String s11 = "1"; String s0 = "0"; String s2 = "2"; assertEquals(0, c.compare(s1,s11)); assertEquals(-1, c.compare(s0,s1)); assertEquals(1, c.compare(s2, s1)); } @Test public void testPrimitiveComparator() { Comparator<Integer> c = (Comparator<Integer>) CompilerUtils.newComparator(int.class); int s0 = 0; int s1 = 1; int s11 = 1; int s2 = 2; assertEquals(0, c.compare(s1,s11)); assertEquals(-1, c.compare(s0,s1)); assertEquals(1, c.compare(s2, s1)); } }