package org.jdesktop.swingx.plaf;
import java.beans.PropertyChangeEvent;
import javax.swing.JTextField;
import org.jdesktop.test.EDTRunner;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@RunWith(EDTRunner.class)
public class AbstractUIChangeHandlerTest {
JTextField tf = new JTextField();
AbstractUIChangeHandler ch;
private boolean changed;
@Before
public void setUp() throws Exception {
ch = new AbstractUIChangeHandler(){
@Override
public void propertyChange(PropertyChangeEvent evt) {
changed = true;
}
};
}
@Test
public void testInstall(){
ch.install(tf);
Assert.assertFalse(changed);
tf.updateUI();
Assert.assertTrue(changed);
}
@Test
public void testUninstall(){
ch.install(tf);
ch.uninstall(tf);
tf.updateUI();
Assert.assertFalse(changed);
}
@Test
public void testDoubleInstall(){
ch.install(tf);
ch.install(tf);
ch.uninstall(tf);
tf.updateUI();
Assert.assertFalse(changed);
}
}