config.documentTypeConfig().add(type2);
assertEquals(2, config.documentTypeConfig().values().size());
- assertTrue(config.documentTypeConfig().values().get(0) instanceof RobustDocumentType);
+ Object firstValue = config.documentTypeConfig().values().iterator()
+ .next();
+ assertTrue(firstValue instanceof RobustDocumentType);
}
@Test
config.transformationConfig().add(transformation2);
assertEquals(2, config.transformationConfig().values().size());
- assertTrue(config.transformationConfig().values().get(0) instanceof RobustTransformation);
+ Object firstValue = config.transformationConfig().values().iterator()
+ .next();
+ assertTrue(firstValue instanceof RobustTransformation);
}
@Test
config.filterConfig().add(filter2);
assertEquals(2, config.filterConfig().values().size());
- assertTrue(config.filterConfig().values().get(0) instanceof RobustFilter);
+ Object firstValue = config.filterConfig().values().iterator().next();
+ assertTrue(firstValue instanceof RobustFilter);
+ }
+
+ @Test
+ public void testEqualityEmptyConfig() {
+ RouterConfig config1 = new SingleRouterConfig(new Id<RouterConfig>(
+ "routerconfig"));
+ RouterConfig config2 = new SingleRouterConfig(new Id<RouterConfig>(
+ "routerconfig"));
+ assertEquals(config1, config2);
+ }
+
+ @Test
+ public void testEqualsNonEmpty() {
+ RouterConfig config1 = new SingleRouterConfig(new Id<RouterConfig>(
+ "routerconfig"));
+
+ assertFalse(config1.equals(null));
+ assertFalse(config.equals("hello"));
+
+ RouterConfig config2 = new SingleRouterConfig(new Id<RouterConfig>(
+ "routerconfig"));
+ DocumentType type1 = mock(DocumentType.class);
+ when(type1.getId()).thenReturn(new Id<DocumentType>("type1"));
+ DocumentType type2 = mock(DocumentType.class);
+ when(type2.getId()).thenReturn(new Id<DocumentType>("type1"));
+ Filter filter1 = mock(Filter.class);
+ when(filter1.getId()).thenReturn(new Id<Filter>("f1"));
+ Filter filter2 = mock(Filter.class);
+ when(filter2.getId()).thenReturn(new Id<Filter>("f1"));
+ Transformation transformation1 = mock(Transformation.class);
+ when(transformation1.getId()).thenReturn(new Id<Transformation>("t1"));
+ Transformation transformation2 = mock(Transformation.class);
+ when(transformation2.getId()).thenReturn(new Id<Transformation>("t1"));
+
+ config1.documentTypeConfig().add(type1);
+ assertFalse(config1.equals(config2));
+
+ config2.documentTypeConfig().add(type2);
+ assertEquals(config1, config2);
+ assertEquals(config1.hashCode(), config2.hashCode());
+
+ config1.transformationConfig().add(transformation1);
+ config2.transformationConfig().add(transformation2);
+
+ assertEquals(config1, config2);
+ assertEquals(config1.hashCode(), config2.hashCode());
+
+ config1.filterConfig().add(filter1);
+ config2.filterConfig().add(filter2);
+
+ assertEquals(config1, config2);
+ assertEquals(config1.hashCode(), config2.hashCode());
}
}