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

📄 concreteclassestest.java

📁 xstream是一个把java object序列化成xml文件的开源库,轻便好用
💻 JAVA
字号:
package com.thoughtworks.acceptance;import com.thoughtworks.acceptance.someobjects.WithList;import java.util.ArrayList;import java.util.LinkedList;public class ConcreteClassesTest extends AbstractAcceptanceTest {    public void testDefaultImplementationOfInterface() {        xstream.alias("with-list", WithList.class);        WithList withList = new WithList();        withList.things = new ArrayList();        String expected =                "<with-list>\n" +                "  <things/>\n" +                "</with-list>";        assertBothWays(withList, expected);    }    public void testAlternativeImplementationOfInterface() {        xstream.alias("with-list", WithList.class);        xstream.alias("linked-list", LinkedList.class);        WithList withList = new WithList();        withList.things = new LinkedList();        String expected =                "<with-list>\n" +                "  <things class=\"linked-list\"/>\n" +                "</with-list>";        assertBothWays(withList, expected);    }    interface MyInterface {    }    public static class MyImp1 extends StandardObject implements MyInterface {        int x = 1;    }    public static class MyImp2 extends StandardObject implements MyInterface {        int y = 2;    }    public static class MyHolder extends StandardObject {        MyInterface field1;        MyInterface field2;    }    public void testCustomInterfaceCanHaveMultipleImplementations() {        xstream.alias("intf", MyInterface.class);        xstream.alias("imp1", MyImp1.class);        xstream.alias("imp2", MyImp2.class);        xstream.alias("h", MyHolder.class);        MyHolder in = new MyHolder();        in.field1 = new MyImp1();        in.field2 = new MyImp2();        String expected = "" +                "<h>\n" +                "  <field1 class=\"imp1\">\n" +                "    <x>1</x>\n" +                "  </field1>\n" +                "  <field2 class=\"imp2\">\n" +                "    <y>2</y>\n" +                "  </field2>\n" +                "</h>";        String xml = xstream.toXML(in);        assertEquals(expected, xml);        MyHolder out = (MyHolder) xstream.fromXML(xml);        assertEquals(MyImp1.class, out.field1.getClass());        assertEquals(MyImp2.class, out.field2.getClass());        assertEquals(2, ((MyImp2) out.field2).y);    }}

⌨️ 快捷键说明

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