From e78c0a1e4a4ebc71502dceccc9ae640862b7ce9e Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sun, 11 Aug 2013 22:35:02 +0200 Subject: o Overhauling inheritance, adding a decent start of support for @MappedSuperclass. --- .../container/compiler/EntityHandlerTest.java | 2 +- .../trygvis/container/compiler/ProcessorTest.java | 71 ++++++++++++++++------ 2 files changed, 53 insertions(+), 20 deletions(-) (limited to 'container-compiler-plugin/src/test/java/io/trygvis/container') diff --git a/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/EntityHandlerTest.java b/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/EntityHandlerTest.java index e24a362..bfe2d89 100644 --- a/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/EntityHandlerTest.java +++ b/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/EntityHandlerTest.java @@ -3,7 +3,7 @@ package io.trygvis.container.compiler; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; -import static io.trygvis.container.compiler.EntityHandler.sqlName; +import static io.trygvis.container.compiler.Utils.sqlName; import static org.fest.assertions.Assertions.assertThat; @Test(singleThreaded = false) diff --git a/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/ProcessorTest.java b/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/ProcessorTest.java index f8cecac..4fa9e87 100644 --- a/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/ProcessorTest.java +++ b/container-compiler-plugin/src/test/java/io/trygvis/container/compiler/ProcessorTest.java @@ -1,6 +1,8 @@ package io.trygvis.container.compiler; import org.apache.commons.io.IOUtils; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import javax.tools.Diagnostic; @@ -12,18 +14,58 @@ import javax.tools.ToolProvider; import java.io.IOException; import java.net.URL; import java.nio.charset.Charset; +import java.util.ArrayList; import java.util.List; import java.util.Locale; import java.util.Map; import static java.util.Arrays.asList; +import static javax.tools.JavaCompiler.CompilationTask; import static org.fest.assertions.Assertions.assertThat; public class ProcessorTest { Charset UTF_8 = Charset.forName("utf-8"); - @Test - public void testBasic() throws Exception { + @BeforeMethod + private void before() { + + } + + @DataProvider(name = "data", parallel = true) + public static Object[][] data() { + return new Object[][]{new Object[]{ + new String[]{ + "io.trygvis.persistence.test.basic.package-info", + "io.trygvis.persistence.test.basic.Person", + "io.trygvis.persistence.test.basic.ParentEntity", + "io.trygvis.persistence.test.basic.ChildEntity", + }, + new String[]{ + "io.trygvis.persistence.test.basic.Sequences", + "io.trygvis.persistence.test.basic.BasicSqlSession", + "io.trygvis.persistence.test.basic.BasicSqlSessionFactory", + "io.trygvis.persistence.test.basic.PersonDao", + "io.trygvis.persistence.test.basic.PersonRow", + "io.trygvis.persistence.test.basic.ChildEntityDao", + "io.trygvis.persistence.test.basic.ChildEntityRow", + } + }, new Object[]{ + new String[]{ + "io.trygvis.persistence.test.inheritance.package-info", + "io.trygvis.persistence.test.inheritance.A",}, + new String[]{ + "io.trygvis.persistence.test.inheritance.Sequences", + "io.trygvis.persistence.test.inheritance.InheritanceSqlSession", + "io.trygvis.persistence.test.inheritance.InheritanceSqlSessionFactory", + "io.trygvis.persistence.test.inheritance.DDao", + "io.trygvis.persistence.test.inheritance.DRow", + } + }, + }; + } + + @Test(dataProvider = "data") + public void testBasic(String[] files, String[] classes) throws Exception { JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); DiagnosticCollector collector = new DiagnosticCollector<>(); @@ -31,14 +73,12 @@ public class ProcessorTest { InMemoryJavaFileManager fileManager = new InMemoryJavaFileManager(standardFileManager); - List sources = asList((JavaSourceFromString[])new JavaSourceFromString[]{ - loadJava("io.trygvis.persistence.test.package-info"), - loadJava("io.trygvis.persistence.test.Person"), - loadJava("io.trygvis.persistence.test.ParentEntity"), - loadJava("io.trygvis.persistence.test.ChildEntity"), - }); + List sources = new ArrayList<>(); + for (String file : files) { + sources.add(loadJava(file)); + } - JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager, collector, null, null, sources); + CompilationTask task = compiler.getTask(null, fileManager, collector, null, null, sources); task.setProcessors(asList(new MyProcessor())); @@ -50,8 +90,8 @@ public class ProcessorTest { if (source != null) { error += source.toUri().getPath(); } - error += ":" + diagnostic.getLineNumber() + ":" + diagnostic.getColumnNumber(); - System.out.println(error + ":" + diagnostic.getMessage(Locale.ENGLISH)); + error += ":" + diagnostic.getLineNumber() + ":" + diagnostic.getColumnNumber(); + System.out.println(error + ": " + diagnostic.getMessage(Locale.ENGLISH)); } } @@ -60,14 +100,7 @@ public class ProcessorTest { System.out.println(entry.getValue()); } - assertThat(fileManager.codes.keySet()).containsOnly( - "io.trygvis.persistence.test.Sequences", - "io.trygvis.persistence.test.TestSqlSession", - "io.trygvis.persistence.test.TestSqlSessionFactory", - "io.trygvis.persistence.test.PersonDao", - "io.trygvis.persistence.test.PersonRow", - "io.trygvis.persistence.test.ChildEntityDao", - "io.trygvis.persistence.test.ChildEntityRow"); + assertThat(fileManager.codes.keySet()).containsOnly((Object[]) classes); assertThat(collector.getDiagnostics()).isEmpty(); assertThat(result).isTrue(); -- cgit v1.2.3