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

📄 xworkconvertertest.java

📁 在Struts2中的jar包xwork的源代码.版本为2.0.7
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        Bar b = (Bar) o;        assertEquals(value, b.getTitle() + ":" + b.getSomethingElse());    }    public void testLocalizedDateConversion() throws Exception {        Date date = new Date(System.currentTimeMillis());        Locale locale = Locale.GERMANY;        DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale);        String dateString = df.format(date);        context.put(ActionContext.LOCALE, locale);        assertEquals(dateString, converter.convertValue(context, null, null, null, date, String.class));    }    public void testStringToIntConversions() {        SimpleAction action = new SimpleAction();        action.setBean(new TestBean());        ValueStack stack = ValueStackFactory.getFactory().createValueStack();        stack.push(action);        Map ognlStackContext = stack.getContext();        ognlStackContext.put(XWorkConverter.REPORT_CONVERSION_ERRORS, Boolean.TRUE);        assertEquals("Conversion should have failed.", OgnlRuntime.NoConversionPossible, converter.convertValue(ognlStackContext, action.getBean(), null, "count", "111.1", int.class));        stack.pop();        Map conversionErrors = (Map) stack.getContext().get(ActionContext.CONVERSION_ERRORS);        assertNotNull(conversionErrors);        assertTrue(conversionErrors.size() == 1);    }    public void testStringArrayToCollection() {        List list = new ArrayList();        list.add("foo");        list.add("bar");        list.add("baz");        assertEquals(list, converter.convertValue(context, null, null, null, new String[]{                "foo", "bar", "baz"        }, Collection.class));    }    public void testStringArrayToList() {        List list = new ArrayList();        list.add("foo");        list.add("bar");        list.add("baz");        assertEquals(list, converter.convertValue(context, null, null, null, new String[]{                "foo", "bar", "baz"        }, List.class));    }    public void testStringArrayToPrimitiveWrappers() {        Long[] longs = (Long[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, Long[].class);        assertNotNull(longs);        assertTrue(Arrays.equals(new Long[]{new Long(123), new Long(456)}, longs));        Integer[] ints = (Integer[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, Integer[].class);        assertNotNull(ints);        assertTrue(Arrays.equals(new Integer[]{                new Integer(123), new Integer(456)        }, ints));        Double[] doubles = (Double[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, Double[].class);        assertNotNull(doubles);        assertTrue(Arrays.equals(new Double[]{new Double(123), new Double(456)}, doubles));        Float[] floats = (Float[]) converter.convertValue(context, null, null, null, new String[]{                "123", "456"        }, Float[].class);        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));    }    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);        User user = new User();        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 testRegisterCustomConverter() {        converter.registerConverter(Boolean.class.getName(), new MyBooleanConverter());        Boolean value = (Boolean) converter.convertValue(null, null, null, null, "Y", Boolean.class);        assertNotNull("conversion failed", value);        assertEquals(Boolean.TRUE, value);    }    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 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 testStringToInt() {        assertEquals(new Integer(123), converter.convertValue(context, null, null, null, "123", int.class));        context.put(ActionContext.LOCALE, Locale.US);        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123.12", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", int.class));        context.put(ActionContext.LOCALE, Locale.GERMANY);        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123.12", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "123aa", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "aa123", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,23", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1,234.12", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234", int.class));        assertEquals(OgnlRuntime.NoConversionPossible, converter.convertValue(context, null, null, null, "1.234,12", int.class));    }    public void testStringToInteger() {        assertEquals(new Integer(123), converter.convertValue(context, null, null, null, "123", Integer.class));

⌨️ 快捷键说明

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