/* * codjo.net * * Common Apache License 2.0 */ package net.codjo.gui; import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; /** * Test <code>NumberField</code> . * * @author $Author: spinae $ * @version $Revision: 1.2 $ */ public class NumberFieldTest extends TestCase { NumberField nbField; /** * Constructor for the NumberFieldTest object * * @param name Description of Parameter */ public NumberFieldTest(String name) { super(name); } /** * A unit test suite for JUnit * * @return The test suite */ public static Test suite() { return new TestSuite(NumberFieldTest.class); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_Double() throws Exception { nbField.setText("12.2"); assertEquals("double value", nbField.getDoubleValue(), 12.2, 0); assertEquals("Double", nbField.getNumberValue(), new Double(12.2)); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_Integer() throws Exception { nbField.setParseIntegerOnly(true); nbField.setText("12"); assertEquals("int value", nbField.getIntValue(), 12); assertEquals("Integer", nbField.getNumberValue(), new Long(12)); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_Integer_point() throws Exception { nbField.setParseIntegerOnly(true); nbField.setText("12"); nbField.getDocument().insertString(1, ".", null); assertEquals(nbField.getText(), "12"); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_getNumberValue_EmptyText() throws Exception { nbField.setText(""); assertEquals("double value", nbField.getDoubleValue(), 0, 0); assertEquals("Double", nbField.getNumberValue(), null); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_insertString() throws Exception { nbField.setText("12"); nbField.getDocument().insertString(2, ".", null); assertEquals(nbField.getText(), "12."); nbField.getDocument().insertString(3, "05", null); assertEquals(nbField.getText(), "12.05"); nbField.getDocument().insertString(3, "y", null); assertEquals(nbField.getText(), "12.05"); nbField.getDocument().insertString(0, " ", null); assertEquals(nbField.getText(), "12.05"); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_insertString_2points() throws Exception { nbField.setText("125.05"); nbField.getDocument().insertString(2, ".", null); assertEquals(nbField.getText(), "125.05"); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_insertString_Casparticulier() throws Exception { nbField.setText(".5"); assertEquals(nbField.getText(), ".5"); assertEquals("double value", nbField.getDoubleValue(), 0.5, 0); } /** * A unit test for JUnit * * @exception Exception Description of Exception */ public void test_insertString_maxValue() throws Exception { nbField.setParseIntegerOnly(true); String maxVal = "" + (Long.MAX_VALUE); nbField.setText(maxVal); assertEquals("MaxValue", nbField.getNumberValue().longValue(), Long.MAX_VALUE); nbField.getDocument().insertString(maxVal.length(), "0", null); assertEquals("b", nbField.getText(), maxVal); } public void test_negative() throws Exception { nbField.setText("12"); nbField.getDocument().insertString(0, "-", null); assertEquals(nbField.getText(), "-12"); assertEquals(-12, nbField.getIntValue()); } public void test_negative_first() throws Exception { nbField.setText("-"); assertEquals(nbField.getText(), "-"); assertEquals(0, nbField.getIntValue()); assertEquals(0., nbField.getDoubleValue(), 0.); nbField.getDocument().insertString(1, "25", null); assertEquals(nbField.getText(), "-25"); assertEquals(-25, nbField.getIntValue()); assertEquals(-25., nbField.getDoubleValue(), 0.); } /** * The JUnit setup method * * @exception Exception Description of Exception */ protected void setUp() throws Exception { nbField = new NumberField(); } /** * The teardown method for JUnit */ protected void tearDown() {} }