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

📄 annotationxworkconvertertest.java

📁 在Struts2中的jar包xwork的源代码.版本为2.0.7
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        assertNotNull(floats);        assertTrue(Arrays.equals(new Float[]{new Float(123), new Float(456)}, floats));        Boolean[] booleans = (Boolean[]) converter.convertValue(context, null, null, null, new String[]{                "true", "false"        }, Boolean[].class);        assertNotNull(booleans);        assertTrue(Arrays.equals(new Boolean[]{Boolean.TRUE, Boolean.FALSE}, booleans));    }    public void testStringArrayToPrimitives() throws OgnlException {        long[] longs = (long[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, long[].class);        assertNotNull(longs);        assertTrue(Arrays.equals(new long[]{123, 456}, longs));        int[] ints = (int[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, int[].class);        assertNotNull(ints);        assertTrue(Arrays.equals(new int[]{123, 456}, ints));        double[] doubles = (double[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, double[].class);        assertNotNull(doubles);        assertTrue(Arrays.equals(new double[]{123, 456}, doubles));        float[] floats = (float[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, float[].class);        assertNotNull(floats);        assertTrue(Arrays.equals(new float[]{123, 456}, floats));        boolean[] booleans = (boolean[]) converter.convertValue(context, null, null, null, new String[]{                "true", "false"        }, boolean[].class);        assertNotNull(booleans);        assertTrue(Arrays.equals(new boolean[]{true, false}, booleans));    }    public void testStringArrayToSet() {        Set list = new HashSet();        list.add("foo");        list.add("bar");        list.add("baz");        assertEquals(list, converter.convertValue(context, null, null, null, new String[]{                "foo", "bar", "bar", "baz"        }, Set.class));    }    // TODO: Fixme... This test does not work with GenericsObjectDeterminer!    public void testStringToCollectionConversion() {        ValueStack stack = ValueStackFactory.getFactory().createValueStack();        Map stackContext = stack.getContext();        stackContext.put(InstantiatingNullHandler.CREATE_NULL_OBJECTS, Boolean.TRUE);        stackContext.put(XWorkMethodAccessor.DENY_METHOD_EXECUTION, Boolean.TRUE);        stackContext.put(XWorkConverter.REPORT_CONVERSION_ERRORS, Boolean.TRUE);        AnnotationUser user = new AnnotationUser();        stack.push(user);        stack.setValue("list", "asdf");        assertNotNull(user.getList());        assertEquals(1, user.getList().size());        assertEquals(String.class, user.getList().get(0).getClass());        assertEquals("asdf", user.getList().get(0));    }    public void testStringToCustomTypeUsingCustomConverter() {        // the converter needs to be registered as the Bar.class converter        // it won't be detected from the Foo-conversion.properties        // because the Foo-conversion.properties file is only used when converting a property of Foo        converter.registerConverter(Bar.class.getName(), new FooBarConverter());        Bar bar = (Bar) converter.convertValue(null, null, null, null, "blah:123", Bar.class);        assertNotNull("conversion failed", bar);        assertEquals(123, bar.getSomethingElse());        assertEquals("blah", bar.getTitle());    }    public void testStringToPrimitiveWrappers() {        assertEquals(new Long(123), converter.convertValue(context, null, null, null, "123", Long.class));        assertEquals(new Integer(123), converter.convertValue(context, null, null, null, "123", Integer.class));        assertEquals(new Double(123.5), converter.convertValue(context, null, null, null, "123.5", Double.class));        assertEquals(new Float(123.5), converter.convertValue(context, null, null, null, "123.5", float.class));        assertEquals(new Boolean(false), converter.convertValue(context, null, null, null, "false", Boolean.class));        assertEquals(new Boolean(true), converter.convertValue(context, null, null, null, "true", Boolean.class));    }    public void testStringToPrimitives() {        assertEquals(new Long(123), converter.convertValue(context, null, null, null, "123", long.class));        assertEquals(new Integer(123), converter.convertValue(context, null, null, null, "123", int.class));        assertEquals(new Double(123.5), converter.convertValue(context, null, null, null, "123.5", double.class));        assertEquals(new Float(123.5), converter.convertValue(context, null, null, null, "123.5", float.class));        assertEquals(new Boolean(false), converter.convertValue(context, null, null, null, "false", boolean.class));        assertEquals(new Boolean(true), converter.convertValue(context, null, null, null, "true", boolean.class));        assertEquals(new BigDecimal(123.5), converter.convertValue(context, null, null, null, "123.5", BigDecimal.class));        assertEquals(new BigInteger("123"), converter.convertValue(context, null, null, null, "123", BigInteger.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 testGenericProperties() {        GenericsBean gb = new GenericsBean();        ValueStack stack = ac.getValueStack();        stack.push(gb);        String[] value = new String[] {"123.12", "123.45"};        stack.setValue("doubles", value);        assertEquals(2, gb.getDoubles().size());        assertEquals(Double.class, gb.getDoubles().get(0).getClass());        assertEquals(new Double(123.12), gb.getDoubles().get(0));        assertEquals(new Double(123.45), gb.getDoubles().get(1));    }    public void testGenericPropertiesFromField() {        GenericsBean gb = new GenericsBean();        ValueStack stack = ac.getValueStack();        stack.push(gb);        stack.setValue("genericMap[123.12]", "66");        stack.setValue("genericMap[456.12]", "42");        assertEquals(2, gb.getGenericMap().size());        assertEquals(Integer.class, stack.findValue("genericMap.get(123.12).class"));        assertEquals(Integer.class, stack.findValue("genericMap.get(456.12).class"));        assertEquals(66, stack.findValue("genericMap.get(123.12)"));        assertEquals(42, stack.findValue("genericMap.get(456.12)"));        assertEquals(true, stack.findValue("genericMap.containsValue(66)"));        assertEquals(true, stack.findValue("genericMap.containsValue(42)"));        assertEquals(true, stack.findValue("genericMap.containsKey(123.12)"));        assertEquals(true, stack.findValue("genericMap.containsKey(456.12)"));    }    public void testGenericPropertiesFromSetter() {        GenericsBean gb = new GenericsBean();        ValueStack stack = ac.getValueStack();        stack.push(gb);        stack.setValue("genericMap[123.12]", "66");        stack.setValue("genericMap[456.12]", "42");        assertEquals(2, gb.getGenericMap().size());        assertEquals(Integer.class, stack.findValue("genericMap.get(123.12).class"));        assertEquals(Integer.class, stack.findValue("genericMap.get(456.12).class"));        assertEquals(66, stack.findValue("genericMap.get(123.12)"));        assertEquals(42, stack.findValue("genericMap.get(456.12)"));        assertEquals(true, stack.findValue("genericMap.containsValue(66)"));        assertEquals(true, stack.findValue("genericMap.containsValue(42)"));        assertEquals(true, stack.findValue("genericMap.containsKey(123.12)"));        assertEquals(true, stack.findValue("genericMap.containsKey(456.12)"));    }    public void testGenericPropertiesFromGetter() {        GenericsBean gb = new GenericsBean();        ValueStack stack = ac.getValueStack();        stack.push(gb);        assertEquals(1, gb.getGetterList().size());        assertEquals(Double.class, stack.findValue("getterList.get(0).class"));        assertEquals(new Double(42.42), stack.findValue("getterList.get(0)"));        assertEquals(new Double(42.42), gb.getGetterList().get(0));    }    // FIXME: Implement nested Generics such as: List of Generics List, Map of Generic keys/values, etc...    public void no_testGenericPropertiesWithNestedGenerics() {        GenericsBean gb = new GenericsBean();        ValueStack stack = ac.getValueStack();        stack.push(gb);        stack.setValue("extendedMap[123.12]", new String[] {"1", "2", "3", "4"});        stack.setValue("extendedMap[456.12]", new String[] {"5", "6", "7", "8", "9"});        System.out.println("gb.getExtendedMap(): " + gb.getExtendedMap());        assertEquals(2, gb.getExtendedMap().size());        System.out.println(stack.findValue("extendedMap"));        assertEquals(4, stack.findValue("extendedMap.get(123.12).size"));        assertEquals(5, stack.findValue("extendedMap.get(456.12).size"));        assertEquals("1", stack.findValue("extendedMap.get(123.12).get(0)"));        assertEquals("5", stack.findValue("extendedMap.get(456.12).get(0)"));        assertEquals(Integer.class, stack.findValue("extendedMap.get(123.12).get(0).class"));        assertEquals(Integer.class, stack.findValue("extendedMap.get(456.12).get(0).class"));        assertEquals(List.class, stack.findValue("extendedMap.get(123.12).class"));        assertEquals(List.class, stack.findValue("extendedMap.get(456.12).class"));    }    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();        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 + -