@Test public void testConcreteImplementsFromNonDataObject() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(ConcreteImplementsFromNonDataObject.class); assertNotNull(model); assertTrue(model.isConcrete()); assertEquals(1, model.getPropertyMap().size()); assertProperty(model.getPropertyMap().get("nonDataObjectProperty"), "nonDataObjectProperty", "setNonDataObjectProperty", null, null, TypeReflectionFactory.create(String.class), true, PropertyKind.VALUE, true); assertEquals(Collections.<ClassTypeInfo>emptySet(), model.getSuperTypes()); }
@Test public void testConcreteOverridesFromNonDataObject() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(ConcreteOverridesFromNonDataObject.class); assertNotNull(model); assertTrue(model.isConcrete()); assertEquals(1, model.getPropertyMap().size()); assertProperty(model.getPropertyMap().get("nonDataObjectProperty"), "nonDataObjectProperty", "setNonDataObjectProperty", null, null, TypeReflectionFactory.create(String.class), true, PropertyKind.VALUE, true); assertEquals(Collections.<ClassTypeInfo>emptySet(), model.getSuperTypes()); }
@Test public void testAbstractInheritsAbstract() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(AbstractInheritsAbstract.class); assertNotNull(model); assertFalse(model.isConcrete()); assertEquals(0, model.getPropertyMap().size()); assertEquals(Collections.singleton((ClassTypeInfo) TypeReflectionFactory.create(Abstract.class)), model.getSuperTypes()); }
@Test public void testConcreteInheritsConcrete() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(ConcreteExtendsConcrete.class); assertNotNull(model); assertTrue(model.isConcrete()); assertEquals(0, model.getPropertyMap().size()); assertEquals(Collections.singleton((ClassTypeInfo) TypeReflectionFactory.create(Concrete.class)), model.getSuperTypes()); assertEquals(TypeReflectionFactory.create(Concrete.class), model.getSuperType()); assertEquals(Collections.<ClassTypeInfo>emptySet(), model.getAbstractSuperTypes()); }
@Test public void testConcreteImplementsAbstract() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(ConcreteInheritsAbstract.class); assertNotNull(model); assertTrue(model.isConcrete()); assertEquals(0, model.getPropertyMap().size()); assertEquals(Collections.singleton((ClassTypeInfo) TypeReflectionFactory.create(Abstract.class)), model.getSuperTypes()); assertEquals(Collections.singleton((ClassTypeInfo) TypeReflectionFactory.create(Abstract.class)), model.getAbstractSuperTypes()); assertNull(model.getSuperType()); }