@Test public void testListFields() { List<String> fields = beanFilter.getBeanFields(SimpleBeanInterface.class, 3); assertTrue(fields.contains("Map")); assertTrue(fields.contains("I")); assertTrue(fields.contains("S")); assertTrue(fields.contains("Style")); assertTrue(fields.contains("List")); assertTrue(fields.contains("BeanList.List")); assertTrue(fields.contains("Map")); assertTrue(fields.contains("BeanMap.List")); assertTrue(fields.contains("BeanMap.BeanMap.BeanMap")); assertFalse(fields.contains("BeanMap.BeanMap.BeanMap.BeanMap")); assertEquals(77, fields.size()); // If failed use next prints to verify and fix // System.out.println(fields.size()); // System.out.println(fields.toString()); } }
@Test public void testNull() throws Exception { assertNull(beanFilter.createFilteredBean(null, ImmutableSet.<String>of("s"))); }
@Test public void testProcessFields() { Set<String> srcFields = ImmutableSet.of("A", "b", "c.d.e.f", "Case", "cAse", "CASE"); Set<String> newFields = beanFilter.processBeanFields(srcFields); assertEquals(7, newFields.size()); assertTrue(newFields.contains("a")); assertTrue(newFields.contains("b")); assertTrue(newFields.contains("c")); assertTrue(newFields.contains("c.d")); assertTrue(newFields.contains("c.d.e")); assertTrue(newFields.contains("c.d.e.f")); assertTrue(newFields.contains("case")); }
assertEquals(2, newData.getBeanMap().size()); assertEquals(null, newData.getBeanMap().get("s1").getS()); assertNotSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertEquals(2, newData.getBeanMap().size()); assertEquals("sub1", newData.getBeanMap().get("s1").getS()); assertNull("List is filtered out", newData.getBeanMap().get("s1").getList()); assertSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertEquals(2, newData.getBeanMap().size()); Map<String, SimpleBeanInterface> subSubMap = newData.getBeanMap().get("s2").getBeanMap(); assertEquals(1, subSubMap.size()); assertEquals("sub2-sub1", subSubMap.get("s2s1").getS()); assertNull("list is filtered", subSubMap.get("s2s1").getList()); assertEquals(2, newData.getBeanMap().size()); assertNotSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertSame(data.getBeanMap().get("s2").getBeanMap().getClass(), newData.getBeanMap().get("s2").getBeanMap().getClass());
@Test public void testString() throws Exception { SimpleBean data = new SimpleBean().setS("data"); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); assertEquals("data", newData.getS()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("i")); assertNull("S is filtered out", newData.getS()); assertNotNull("Required field", newData.getRequired()); }
@Test public void testList() throws Exception { SimpleBean data = new SimpleBean().setList(ImmutableList.<String>of("d1", "d2")); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); assertEquals(null, newData.getList()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("list")); assertArrayEquals(data.getList().toArray(), newData.getList().toArray()); }
@Test public void testSimple() throws Exception { String data = "data"; String newData = (String) beanFilter.createFilteredBean(data, null); assertSame(data, newData); }
@Test public void testInt() throws Exception { SimpleBean data = new SimpleBean().setI(5); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("i")); assertEquals(5, newData.getI()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); // Filter is ignored for primitive types: assertEquals(5, newData.getI()); }
assertEquals(2, newData.getBeanMap().size()); assertEquals(null, newData.getBeanMap().get("s1").getS()); assertNotSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertEquals(2, newData.getBeanMap().size()); assertEquals("sub1", newData.getBeanMap().get("s1").getS()); assertNull("List is filtered out", newData.getBeanMap().get("s1").getList()); assertSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertEquals(2, newData.getBeanMap().size()); Map<String, SimpleBeanInterface> subSubMap = newData.getBeanMap().get("s2").getBeanMap(); assertEquals(1, subSubMap.size()); assertEquals("sub2-sub1", subSubMap.get("s2s1").getS()); assertNull("list is filtered", subSubMap.get("s2s1").getList()); assertEquals(2, newData.getBeanMap().size()); assertNotSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertSame(data.getBeanMap().get("s2").getBeanMap().getClass(), newData.getBeanMap().get("s2").getBeanMap().getClass());
@Test public void testString() throws Exception { SimpleBean data = new SimpleBean().setS("data"); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); assertEquals("data", newData.getS()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("i")); assertNull("S is filtered out", newData.getS()); assertNotNull("Required field", newData.getRequired()); }
@Test public void testList() throws Exception { SimpleBean data = new SimpleBean().setList(ImmutableList.<String>of("d1", "d2")); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); assertEquals(null, newData.getList()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("list")); assertArrayEquals(data.getList().toArray(), newData.getList().toArray()); }
@Test public void testProcessFields() { Set<String> srcFields = ImmutableSet.of("A", "b", "c.d.e.f", "Case", "cAse", "CASE"); Set<String> newFields = beanFilter.processBeanFields(srcFields); assertEquals(7, newFields.size()); assertTrue(newFields.contains("a")); assertTrue(newFields.contains("b")); assertTrue(newFields.contains("c")); assertTrue(newFields.contains("c.d")); assertTrue(newFields.contains("c.d.e")); assertTrue(newFields.contains("c.d.e.f")); assertTrue(newFields.contains("case")); }
@Test public void testSimple() throws Exception { String data = "data"; String newData = (String) beanFilter.createFilteredBean(data, null); assertSame(data, newData); }
@Test public void testInt() throws Exception { SimpleBean data = new SimpleBean().setI(5); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("i")); assertEquals(5, newData.getI()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); // Filter is ignored for primitive types: assertEquals(5, newData.getI()); }
assertEquals(2, newData.getBeanMap().size()); assertEquals(null, newData.getBeanMap().get("s1").getS()); assertNotSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertEquals(2, newData.getBeanMap().size()); assertEquals("sub1", newData.getBeanMap().get("s1").getS()); assertNull("List is filtered out", newData.getBeanMap().get("s1").getList()); assertSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertEquals(2, newData.getBeanMap().size()); Map<String, SimpleBeanInterface> subSubMap = newData.getBeanMap().get("s2").getBeanMap(); assertEquals(1, subSubMap.size()); assertEquals("sub2-sub1", subSubMap.get("s2s1").getS()); assertNull("list is filtered", subSubMap.get("s2s1").getList()); assertEquals(2, newData.getBeanMap().size()); assertNotSame(dataBean.getBeanMap().getClass(), newData.getBeanMap().getClass()); assertSame(data.getBeanMap().get("s2").getBeanMap().getClass(), newData.getBeanMap().get("s2").getBeanMap().getClass());
@Test public void testString() throws Exception { SimpleBean data = new SimpleBean().setS("data"); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); assertEquals("data", newData.getS()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("i")); assertNull("S is filtered out", newData.getS()); assertNotNull("Required field", newData.getRequired()); }
@Test public void testListFields() { List<String> fields = beanFilter.getBeanFields(SimpleBeanInterface.class, 3); assertTrue(fields.contains("Map")); assertTrue(fields.contains("I")); assertTrue(fields.contains("S")); assertTrue(fields.contains("Style")); assertTrue(fields.contains("List")); assertTrue(fields.contains("BeanList.List")); assertTrue(fields.contains("Map")); assertTrue(fields.contains("BeanMap.List")); assertTrue(fields.contains("BeanMap.BeanMap.BeanMap")); assertFalse(fields.contains("BeanMap.BeanMap.BeanMap.BeanMap")); assertEquals(77, fields.size()); // If failed use next prints to verify and fix // System.out.println(fields.size()); // System.out.println(fields.toString()); } }
@Test public void testList() throws Exception { SimpleBean data = new SimpleBean().setList(ImmutableList.<String>of("d1", "d2")); SimpleBeanInterface dataBean = (SimpleBeanInterface) beanDelegator.createDelegator(data); SimpleBeanInterface newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("s")); assertEquals(null, newData.getList()); newData = (SimpleBeanInterface) beanFilter.createFilteredBean( dataBean, ImmutableSet.<String>of("list")); assertArrayEquals(data.getList().toArray(), newData.getList().toArray()); }
@Test public void testProcessFields() { Set<String> srcFields = ImmutableSet.of("A", "b", "c.d.e.f", "Case", "cAse", "CASE"); Set<String> newFields = beanFilter.processBeanFields(srcFields); assertEquals(7, newFields.size()); assertTrue(newFields.contains("a")); assertTrue(newFields.contains("b")); assertTrue(newFields.contains("c")); assertTrue(newFields.contains("c.d")); assertTrue(newFields.contains("c.d.e")); assertTrue(newFields.contains("c.d.e.f")); assertTrue(newFields.contains("case")); }
@Test public void testSimple() throws Exception { String data = "data"; String newData = (String) beanFilter.createFilteredBean(data, null); assertSame(data, newData); }