@Test public void testWithFieldWithInnerClass() { String expectedClass = "package com.optible.processor.model;\n\n" + "import org.junit.Test;\n\n" + "@org.junit.Test\n" + "public class ClassModelTest {\n\n" + " public class InnerClass {\n };\n" + "}\n"; TopLevelModel model = new TopLevelModel("com.optible.processor.model", "ClassModelTest"); model.addModifiers(Modifier.PUBLIC); model.addImports("org.junit.Test"); model.addAnnotations(new AnnotationModel("org.junit.Test")); TopLevelModel inner = new TopLevelModel("package", "InnerClass"); inner.addModifiers(Modifier.PUBLIC); model.addInnerClass(inner); String resultClass = model.toString(); assertEquals(expectedClass, resultClass); }
@Test public void testSimple() { String expectedClass = "package com.optible.processor.model;\n\n" + "import org.junit.Test;\n\n" + "public class ClassModelTest {\n" + "}\n"; TopLevelModel model = new TopLevelModel("com.optible.processor.model", "ClassModelTest"); model.addModifiers(Modifier.PUBLIC); model.addImports("org.junit.Test"); String resultClass = model.toString(); assertEquals(expectedClass, resultClass); }
@Test public void testWithGenericsExtends() { String expectedClass = "package com.optible.processor.model;\n\n" + "import org.junit.Test;\n\n" + "public class ClassModelTest extends BaseTest<View.view, Presenter.presenter> {\n" + "}\n"; TopLevelModel model = new TopLevelModel("com.optible.processor.model", "ClassModelTest"); model.addExtends("BaseTest<View.view, Presenter.presenter>"); model.addModifiers(Modifier.PUBLIC); model.addImports("org.junit.Test"); String resultClass = model.toString(); assertEquals(expectedClass, resultClass); }
@Test public void testWithExtendsWithPath() { String expectedClass = "package com.optible.processor.model;\n\n" + "import test.BaseTest;\nimport org.junit.Test;\n\n" + "public class ClassModelTest extends BaseTest {\n" + "}\n"; TopLevelModel model = new TopLevelModel("com.optible.processor.model", "ClassModelTest"); model.addExtends(new TypeModel("test", "BaseTest")); model.addModifiers(Modifier.PUBLIC); model.addImports("org.junit.Test"); String resultClass = model.toString(); assertEquals(expectedClass, resultClass); }
@Test public void testWithFields() { String expectedClass = "package com.optible.processor.model;\n\n" + "import org.junit.Test;\n\n" + "@org.junit.Test\n" + "public class ClassModelTest {\n\n" + " public Long id;\n" + "}\n"; TopLevelModel model = new TopLevelModel("com.optible.processor.model", "ClassModelTest"); model.addModifiers(Modifier.PUBLIC); model.addImports("org.junit.Test"); model.addAnnotations(new AnnotationModel("org.junit.Test")); FieldModel methodModel = new FieldModel("Long", "id"); methodModel.addModifiers(Modifier.PUBLIC); model.addFields(methodModel); String resultClass = model.toString(); assertEquals(expectedClass, resultClass); }