X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fxmlrouter%2Fimpl%2FSingleRouterConfigTest.java;h=7a71a6c2e8bda9924698ea03f982d5aa471695f4;hb=3b2c669b25bfcb5a3c3f06ff9180d85143bebb2a;hp=3df429315aeed8c33bf39eb6ab35078013126807;hpb=f8027d76e1c3e517a8b80a3476f51adee845fc5b;p=xmlrouter diff --git a/impl/src/test/java/org/wamblee/xmlrouter/impl/SingleRouterConfigTest.java b/impl/src/test/java/org/wamblee/xmlrouter/impl/SingleRouterConfigTest.java index 3df4293..7a71a6c 100644 --- a/impl/src/test/java/org/wamblee/xmlrouter/impl/SingleRouterConfigTest.java +++ b/impl/src/test/java/org/wamblee/xmlrouter/impl/SingleRouterConfigTest.java @@ -23,16 +23,15 @@ import org.junit.Test; import org.wamblee.xmlrouter.common.Id; import org.wamblee.xmlrouter.config.DocumentType; import org.wamblee.xmlrouter.config.Filter; -import org.wamblee.xmlrouter.config.RouterConfig; import org.wamblee.xmlrouter.config.Transformation; public class SingleRouterConfigTest { - private ExtendedRouterConfig config; + private SingleRouterConfig config; @Before public void setUp() { - config = new SingleRouterConfig(new Id("routerconfig")); + config = new SingleRouterConfig("routerconfig"); assertEquals("routerconfig", config.getId().getId()); } @@ -87,23 +86,19 @@ public class SingleRouterConfigTest { @Test public void testEqualityEmptyConfig() { - RouterConfig config1 = new SingleRouterConfig(new Id( - "routerconfig")); - RouterConfig config2 = new SingleRouterConfig(new Id( - "routerconfig")); + RouterConfig config1 = new SingleRouterConfig("routerconfig"); + RouterConfig config2 = new SingleRouterConfig("routerconfig"); assertEquals(config1, config2); } @Test public void testEqualsNonEmpty() { - RouterConfig config1 = new SingleRouterConfig(new Id( - "routerconfig")); + RouterConfig config1 = new SingleRouterConfig("routerconfig"); assertFalse(config1.equals(null)); assertFalse(config.equals("hello")); - RouterConfig config2 = new SingleRouterConfig(new Id( - "routerconfig")); + RouterConfig config2 = new SingleRouterConfig("routerconfig"); DocumentType type1 = mock(DocumentType.class); when(type1.getId()).thenReturn(new Id("type1")); DocumentType type2 = mock(DocumentType.class); @@ -136,4 +131,25 @@ public class SingleRouterConfigTest { assertEquals(config1, config2); assertEquals(config1.hashCode(), config2.hashCode()); } + + @Test + public void testCopy() { + testDocumentType(); + testFilter(); + testTransformation(); + + SingleRouterConfig copy = new SingleRouterConfig(config); + assertEquals(config.getId(), copy.getId()); + assertEquals(config, copy); + + // verify the copy is not shallow. + + config.documentTypeConfig().remove(new Id("type1")); + config.transformationConfig().remove(new Id("t1")); + config.filterConfig().remove(new Id("f1")); + assertEquals(1, config.documentTypeConfig().values().size()); + assertEquals(1, config.transformationConfig().values().size()); + assertEquals(1, config.filterConfig().values().size()); + assertFalse(config.equals(copy)); + } }