⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xworkconvertertest.java

📁 在Struts2中的jar包xwork的源代码.版本为2.0.7
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        context.put(ActionContext.LOCALE, Locale.US);        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123.12", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", Integer.class));        assertEquals(new Integer(1234), converter.convertValue(context, null, null, null, "1,234", Integer.class));        // WRONG: locale separator is wrongly placed        assertEquals(new Integer(123), converter.convertValue(context, null, null, null, "1,23", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", Integer.class));        context.put(ActionContext.LOCALE, Locale.GERMANY);        // WRONG: locale separator is wrongly placed        assertEquals(new Integer(12312), converter.convertValue(context, null, null, null, "123.12", Integer.class));        assertEquals(new Integer(1234), converter.convertValue(context, null, null, null, "1.234", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", Integer.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", Integer.class));    }    public void testStringToPrimitiveDouble() {        assertEquals(new Double(123), converter.convertValue(context, null, null, null, "123", double.class));        context.put(ActionContext.LOCALE, Locale.US);        assertEquals(new Double(123.12), converter.convertValue(context, null, null, null, "123.12", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", double.class));        assertEquals(new Double(1.234), converter.convertValue(context, null, null, null, "1.234", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", double.class));        context.put(ActionContext.LOCALE, Locale.GERMANY);        assertEquals(new Double(123.12), converter.convertValue(context, null, null, null, "123.12", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", double.class));        assertEquals(new Double(1.234), converter.convertValue(context, null, null, null, "1.234", double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", double.class));    }    public void testStringToDouble() {        assertEquals(new Double(123), converter.convertValue(context, null, null, null, "123", Double.class));        context.put(ActionContext.LOCALE, Locale.US);        assertEquals(new Double(123.12), converter.convertValue(context, null, null, null, "123.12", Double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", Double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", Double.class));        assertEquals(new Double(1234), converter.convertValue(context, null, null, null, "1,234", Double.class));        assertEquals(new Double(1234.12), converter.convertValue(context, null, null, null, "1,234.12", Double.class));        // WRONG: locale separator is wrongly placed         assertEquals(new Double(123), converter.convertValue(context, null, null, null, "1,23", Double.class));        assertEquals(new Double(1.234), converter.convertValue(context, null, null, null, "1.234", Double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", Double.class));        context.put(ActionContext.LOCALE, Locale.GERMANY);        // WRONG: locale separator is wrongly placed        assertEquals(new Double(12312), converter.convertValue(context, null, null, null, "123.12", Double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", Double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", Double.class));        assertEquals(new Double(1.234), converter.convertValue(context, null, null, null, "1,234", Double.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", Double.class));        assertEquals(new Double(1.23), converter.convertValue(context, null, null, null, "1,23", Double.class));        assertEquals(new Double(1234), converter.convertValue(context, null, null, null, "1.234", Double.class));        assertEquals(new Double(1234.12), converter.convertValue(context, null, null, null, "1.234,12", Double.class));    }    // Testing for null result on non-primitive Number types supplied as empty String or     public void testNotPrimitiveDefaultsToNull() {        assertEquals(null, converter.convertValue(context, null, null, null, null, Double.class));        assertEquals(null, converter.convertValue(context, null, null, null, "", Double.class));        assertEquals(null, converter.convertValue(context, null, null, null, null, Integer.class));        assertEquals(null, converter.convertValue(context, null, null, null, "", Integer.class));        assertEquals(null, converter.convertValue(context, null, null, null, null, Float.class));        assertEquals(null, converter.convertValue(context, null, null, null, "", Float.class));        assertEquals(null, converter.convertValue(context, null, null, null, null, Character.class));        assertEquals(null, converter.convertValue(context, null, null, null, "", Character.class));        assertEquals(null, converter.convertValue(context, null, null, null, null, Long.class));        assertEquals(null, converter.convertValue(context, null, null, null, "", Long.class));        assertEquals(null, converter.convertValue(context, null, null, null, null, Short.class));        assertEquals(null, converter.convertValue(context, null, null, null, "", Short.class));    }    public void testConvertChar() {        assertEquals(new Character('A'), converter.convertValue(context, "A", char.class));        assertEquals(new Character('Z'), converter.convertValue(context, "Z", char.class));        assertEquals(new Character('A'), converter.convertValue(context, "A", Character.class));        assertEquals(new Character('Z'), converter.convertValue(context, "Z", Character.class));        assertEquals(new Character('A'), converter.convertValue(context, new Character('A'), char.class));        assertEquals(new Character('Z'), converter.convertValue(context, new Character('Z'), char.class));        assertEquals(new Character('A'), converter.convertValue(context, new Character('A'), Character.class));        assertEquals(new Character('Z'), converter.convertValue(context, new Character('Z'), Character.class));        assertEquals(new Character('D'), converter.convertValue(context, "DEF", char.class));        assertEquals(new Character('X'), converter.convertValue(context, "XYZ", Character.class));        assertEquals(new Character(' '), converter.convertValue(context, " ", Character.class));        assertEquals(new Character(' '), converter.convertValue(context, "   ", char.class));        assertEquals(null, converter.convertValue(context, "", char.class));    }    public void testConvertClass() {        Class clazz = (Class) converter.convertValue(context, "java.util.Date", Class.class);        assertEquals(Date.class.getName(), clazz.getName());        Class clazz2 = (Class) converter.convertValue(context, "com.opensymphony.xwork2.util.Bar", Class.class);        assertEquals(Bar.class.getName(), clazz2.getName());        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, "com.opensymphony.xwork2.util.IDoNotExist", Class.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, new Bar(), Class.class)); // only supports string values    }    public void testConvertBoolean() {        assertEquals(Boolean.TRUE, converter.convertValue(context, "true", Boolean.class));        assertEquals(Boolean.FALSE, converter.convertValue(context, "false", Boolean.class));        assertEquals(Boolean.TRUE, converter.convertValue(context, Boolean.TRUE, Boolean.class));        assertEquals(Boolean.FALSE, converter.convertValue(context, Boolean.FALSE, Boolean.class));        assertEquals(null, converter.convertValue(context, null, Boolean.class));        assertEquals(Boolean.TRUE, converter.convertValue(context, new Bar(), Boolean.class)); // Ognl converter will default to true    }    public void testConvertPrimitiveArraysToString() {        assertEquals("2, 3, 1", converter.convertValue(context, new int[]{2, 3, 1}, String.class));        assertEquals("100, 200, 300", converter.convertValue(context, new long[]{100, 200, 300}, String.class));        assertEquals("1.5, 2.5, 3.5", converter.convertValue(context, new double[]{1.5, 2.5, 3.5}, String.class));        assertEquals("true, false, true", converter.convertValue(context, new boolean[]{true, false, true}, String.class));    }    public void testConvertSameCollectionToCollection() {        Collection names = new ArrayList();        names.add("XWork");        names.add("Struts");        Collection col = (Collection) converter.convertValue(context, names, Collection.class);        assertSame(names, col);    }    public void testConvertSqlTimestamp() {        assertNotNull(converter.convertValue(context, new Timestamp(new Date().getTime()), String.class));        assertNotNull(converter.convertValue(null, new Timestamp(new Date().getTime()), String.class));    }    public void testValueStackWithTypeParameter() {        ValueStack stack = ValueStackFactory.getFactory().createValueStack();        stack.push(new Foo1());        Bar1 bar = (Bar1) stack.findValue("bar", Bar1.class);        assertNotNull(bar);    }    public void testNestedConverters() {        OgnlValueStack stack = new OgnlValueStack();        Cat cat = new Cat();        cat.setFoo(new Foo());        stack.push(cat);        stack.setValue("foo.number", "123");        assertEquals(321, cat.getFoo().getNumber());    }    public static class Foo1 {        public Bar1 getBar() {            return new Bar1Impl();        }    }    public interface Bar1 {    }    public static class Bar1Impl implements Bar1 {    }    protected void setUp() throws Exception {        ObjectFactory.setObjectFactory(new ObjectFactory());        configurationManager = new ConfigurationManager();        converter = XWorkConverter.getInstance();        configurationManager.destroyConfiguration();        ValueStack stack = ValueStackFactory.getFactory().createValueStack();        ActionContext ac = new ActionContext(stack.getContext());        ac.setLocale(Locale.US);        ActionContext.setContext(ac);        context = ac.getContextMap();    }    protected void tearDown() throws Exception {        XWorkConverter.resetInstance();        ActionContext.setContext(null);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -