BUG-2179: split logging out of CodeGenerator
[yangtools.git] / yang / yang-maven-plugin / src / test / java / org / opendaylight / yangtools / yang2sources / plugin / GenerateSourcesTest.java
index a5c7c146fce2d285b21905e23c0ba5c21ba80ce9..063083eaed20da9e1c01669f3130afb20e1d7f6c 100644 (file)
@@ -7,11 +7,17 @@
  */
 package org.opendaylight.yangtools.yang2sources.plugin;
 
-import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.*;
-import static org.junit.matchers.JUnitMatchers.containsString;
+import static org.hamcrest.CoreMatchers.containsString;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
 import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+
+import com.google.common.collect.Lists;
 
 import java.io.File;
 import java.io.IOException;
@@ -31,9 +37,9 @@ import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 import org.opendaylight.yangtools.yang2sources.plugin.ConfigArg.CodeGeneratorArg;
 import org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.YangProvider;
-import org.opendaylight.yangtools.yang2sources.spi.CodeGenerator;
-
-import com.google.common.collect.Lists;
+import org.opendaylight.yangtools.yang2sources.spi.BasicCodeGenerator;
+import org.opendaylight.yangtools.yang2sources.spi.MavenLogAware;
+import org.opendaylight.yangtools.yang2sources.spi.MavenProjectAware;
 
 public class GenerateSourcesTest {
 
@@ -68,16 +74,16 @@ public class GenerateSourcesTest {
     @Test
     public void test() throws Exception {
         mojo.execute();
-        assertThat(GeneratorMock.called, is(1));
-        assertThat(GeneratorMock.outputDir, is(outDir));
-        assertThat(GeneratorMock.project, is(project));
+        assertEquals(1, GeneratorMock.called);
+        assertEquals(outDir, GeneratorMock.outputDir);
+        assertEquals(project, GeneratorMock.project);
         assertNotNull(GeneratorMock.log);
         assertTrue(GeneratorMock.additionalCfg.isEmpty());
         assertThat(GeneratorMock.resourceBaseDir.toString(), containsString("target" + File.separator
-                + "generated-resources"));
+                + "generated-sources" + File.separator + "spi"));
     }
 
-    public static class GeneratorMock implements CodeGenerator {
+    public static class GeneratorMock implements BasicCodeGenerator, MavenLogAware, MavenProjectAware {
 
         private static int called = 0;
         private static File outputDir;
@@ -87,7 +93,7 @@ public class GenerateSourcesTest {
         private static MavenProject project;
 
         @Override
-        public Collection<File> generateSources(SchemaContext context, File outputBaseDir, Set<Module> currentModules)
+        public Collection<File> generateSources(final SchemaContext context, final File outputBaseDir, final Set<Module> currentModules)
                 throws IOException {
             called++;
             outputDir = outputBaseDir;
@@ -95,23 +101,23 @@ public class GenerateSourcesTest {
         }
 
         @Override
-        public void setLog(Log log) {
+        public void setLog(final Log log) {
             GeneratorMock.log = log;
         }
 
         @Override
-        public void setAdditionalConfig(Map<String, String> additionalConfiguration) {
+        public void setAdditionalConfig(final Map<String, String> additionalConfiguration) {
             GeneratorMock.additionalCfg = additionalConfiguration;
         }
 
         @Override
-        public void setResourceBaseDir(File resourceBaseDir) {
+        public void setResourceBaseDir(final File resourceBaseDir) {
             GeneratorMock.resourceBaseDir = resourceBaseDir;
 
         }
 
         @Override
-        public void setMavenProject(MavenProject project) {
+        public void setMavenProject(final MavenProject project) {
             GeneratorMock.project = project;
         }
     }