@Override public String filename(DataObjectModel model) { if (model.isClass() && model.getGenerateConverter()) { return model.getFqn() + "Converter.java"; } return null; }
@Test public void testDataObjectInterface() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(InterfaceDataObject.class); assertNotNull(model); assertFalse(model.isClass()); }
@Test public void testDataObjectWithAnnotations() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(DataObjectWithAnnotatedField.class); assertNotNull(model); assertTrue(model.isClass()); assertTrue(model.getGenerateConverter()); assertTrue(model.isPublicConverter()); PropertyInfo idModel = model.getPropertyMap().get("id"); assertEquals(1, idModel.getAnnotations().size()); assertNotNull(idModel.getAnnotation(SomeAnnotation.class.getName()).getName()); PropertyInfo fieldWithMethodAnnotationModel = model.getPropertyMap().get("fieldWithMethodAnnotation"); assertEquals(2, fieldWithMethodAnnotationModel.getAnnotations().size()); assertNotNull(fieldWithMethodAnnotationModel.getAnnotation(SomeAnnotation.class.getName()).getName()); assertNotNull(fieldWithMethodAnnotationModel.getAnnotation(SomeMethodAnnotation.class.getName()).getName()); }
@Test public void testEmptyDataObject() throws Exception { DataObjectModel model = new GeneratorHelper().generateDataObject(EmptyDataObject.class); assertNotNull(model); assertTrue(model.isClass()); assertFalse(model.getGenerateConverter()); assertFalse(model.getInheritConverter()); assertTrue(model.isPublicConverter()); try { EmptyDataObject.class.getConstructor(); fail(); } catch (NoSuchMethodException ignore) { } try { EmptyDataObject.class.getConstructor(EmptyDataObject.class); fail(); } catch (NoSuchMethodException ignore) { } }