📄 convertutilstestcase.java
字号:
/** * Positive scalar conversion tests. */ public void testPositiveScalar() { Object value = null; value = ConvertUtils.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("true", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("yes", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("yes", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("y", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("y", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("on", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("on", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), true); value = ConvertUtils.convert("false", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("false", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("no", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("no", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("n", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("n", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("off", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("off", Boolean.class); assertTrue(value instanceof Boolean); assertEquals(((Boolean) value).booleanValue(), false); value = ConvertUtils.convert("123", Byte.TYPE); assertTrue(value instanceof Byte); assertEquals(((Byte) value).byteValue(), (byte) 123); value = ConvertUtils.convert("123", Byte.class); assertTrue(value instanceof Byte); assertEquals(((Byte) value).byteValue(), (byte) 123); value = ConvertUtils.convert("a", Character.TYPE); assertTrue(value instanceof Character); assertEquals(((Character) value).charValue(), 'a'); value = ConvertUtils.convert("a", Character.class); assertTrue(value instanceof Character); assertEquals(((Character) value).charValue(), 'a'); value = ConvertUtils.convert("java.lang.String", Class.class); assertTrue(value instanceof Class); assertEquals(String.class, (Class) value); value = ConvertUtils.convert("123.456", Double.TYPE); assertTrue(value instanceof Double); assertEquals(((Double) value).doubleValue(), (double) 123.456, (double) 0.005); value = ConvertUtils.convert("123.456", Double.class); assertTrue(value instanceof Double); assertEquals(((Double) value).doubleValue(), (double) 123.456, (double) 0.005); value = ConvertUtils.convert("123.456", Float.TYPE); assertTrue(value instanceof Float); assertEquals(((Float) value).floatValue(), (float) 123.456, (float) 0.005); value = ConvertUtils.convert("123.456", Float.class); assertTrue(value instanceof Float); assertEquals(((Float) value).floatValue(), (float) 123.456, (float) 0.005); value = ConvertUtils.convert("123", Integer.TYPE); assertTrue(value instanceof Integer); assertEquals(((Integer) value).intValue(), (int) 123); value = ConvertUtils.convert("123", Integer.class); assertTrue(value instanceof Integer); assertEquals(((Integer) value).intValue(), (int) 123); value = ConvertUtils.convert("123", Long.TYPE); assertTrue(value instanceof Long); assertEquals(((Long) value).longValue(), (long) 123); value = ConvertUtils.convert("123", Long.class); assertTrue(value instanceof Long); assertEquals(((Long) value).longValue(), (long) 123); value = ConvertUtils.convert("123", Short.TYPE); assertTrue(value instanceof Short); assertEquals(((Short) value).shortValue(), (short) 123); value = ConvertUtils.convert("123", Short.class); assertTrue(value instanceof Short); assertEquals(((Short) value).shortValue(), (short) 123); String input = null; input = "2002-03-17"; value = ConvertUtils.convert(input, Date.class); assertTrue(value instanceof Date); assertEquals(input, value.toString()); input = "20:30:40"; value = ConvertUtils.convert(input, Time.class); assertTrue(value instanceof Time); assertEquals(input, value.toString()); input = "2002-03-17 20:30:40.0"; value = ConvertUtils.convert(input, Timestamp.class); assertTrue(value instanceof Timestamp); assertEquals(input, value.toString()); } /** * Positive String to String array tests. */ public void testPositiveStringArray() { Object value = null; String stringArray[] = new String[0]; String stringArray1[] = new String[] { "abc" }; String stringArray2[] = new String[] { "abc", "de,f" }; value = ConvertUtils.convert("", stringArray.getClass()); checkStringArray(value, stringArray); value = ConvertUtils.convert(" ", stringArray.getClass()); checkStringArray(value, stringArray); value = ConvertUtils.convert("{}", stringArray.getClass()); checkStringArray(value, stringArray); value = ConvertUtils.convert("{ }", stringArray.getClass()); checkStringArray(value, stringArray); value = ConvertUtils.convert("abc", stringArray.getClass()); checkStringArray(value, stringArray1); value = ConvertUtils.convert("{abc}", stringArray.getClass()); checkStringArray(value, stringArray1); value = ConvertUtils.convert("\"abc\"", stringArray.getClass()); checkStringArray(value, stringArray1); value = ConvertUtils.convert("{\"abc\"}", stringArray.getClass()); checkStringArray(value, stringArray1); value = ConvertUtils.convert("'abc'", stringArray.getClass()); checkStringArray(value, stringArray1); value = ConvertUtils.convert("{'abc'}", stringArray.getClass()); checkStringArray(value, stringArray1); value = ConvertUtils.convert("abc 'de,f'", stringArray.getClass()); checkStringArray(value, stringArray2); value = ConvertUtils.convert("{abc, 'de,f'}", stringArray.getClass()); checkStringArray(value, stringArray2); value = ConvertUtils.convert("\"abc\",\"de,f\"", stringArray.getClass()); checkStringArray(value, stringArray2); value = ConvertUtils.convert("{\"abc\" 'de,f'}", stringArray.getClass()); checkStringArray(value, stringArray2); value = ConvertUtils.convert("'abc' 'de,f'", stringArray.getClass()); checkStringArray(value, stringArray2); value = ConvertUtils.convert("{'abc', \"de,f\"}", stringArray.getClass()); checkStringArray(value, stringArray2); } public void testSeparateConvertInstances() throws Exception { ConvertUtilsBean utilsOne = new ConvertUtilsBean(); ConvertUtilsBean utilsTwo = new ConvertUtilsBean(); // make sure that the test work ok before anything's changed Object value = utilsOne.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals( "Standard conversion failed (1)", ((Boolean) value).booleanValue(), true); value = utilsTwo.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals( "Standard conversion failed (2)", ((Boolean) value).booleanValue(), true); // now register a test utilsOne.register(new ThrowExceptionConverter(), Boolean.TYPE); try { utilsOne.convert("true", Boolean.TYPE); fail("Register converter failed."); } catch (PassTestException e) { /* This shows that the registration has worked */ } try { // nothing should have changed value = utilsTwo.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals( "Standard conversion failed (3)", ((Boolean) value).booleanValue(), true); } catch (PassTestException e) { // This is a failure since utilsTwo should still have // standard converters registered fail("Registering a converter for an instance should not effect another instance."); } // nothing we'll test deregister utilsOne.deregister(); value = utilsOne.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals("Instance deregister failed.", ((Boolean) value).booleanValue(), true); value = utilsTwo.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals( "Standard conversion failed (4)", ((Boolean) value).booleanValue(), true); } public void testDeregisteringSingleConverter() throws Exception { ConvertUtils convertUtils = new ConvertUtils(); // make sure that the test work ok before anything's changed Object value = convertUtils.convert("true", Boolean.TYPE); assertTrue(value instanceof Boolean); assertEquals( "Standard conversion failed (1)", ((Boolean) value).booleanValue(), true); // we'll test deregister convertUtils.deregister(Boolean.TYPE); assertNull("Converter should be null",convertUtils.lookup(Boolean.TYPE)); } // -------------------------------------------------------- Private Methods private void checkIntegerArray(Object value, int intArray[]) { assertNotNull("Returned value is not null", value); assertEquals("Returned value is int[]", intArray.getClass(), value.getClass()); int results[] = (int[]) value; assertEquals("Returned array length", intArray.length, results.length); for (int i = 0; i < intArray.length; i++) { assertEquals("Returned array value " + i, intArray[i], results[i]); } } private void checkStringArray(Object value, String stringArray[]) { assertNotNull("Returned value is not null", value); assertEquals("Returned value is String[]", stringArray.getClass(), value.getClass()); String results[] = (String[]) value; assertEquals("Returned array length", stringArray.length, results.length); for (int i = 0; i < stringArray.length; i++) { assertEquals("Returned array value " + i, stringArray[i], results[i]); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -