Explorar el Código

Streamline EMF test classes.

Timur Sağlam hace 4 años
padre
commit
18b30659aa

+ 9 - 10
jplag.frontend.emf-metamodel-dynamic/src/test/java/de/jplag/emf/dynamic/MinimalDynamicMetamodelTest.java

@@ -18,6 +18,7 @@ import org.slf4j.LoggerFactory;
 
 import de.jplag.TokenList;
 import de.jplag.TokenPrinter;
+import de.jplag.testutils.FileUtil;
 import de.jplag.testutils.TestErrorConsumer;
 import de.jplag.testutils.TokenUtils;
 
@@ -25,7 +26,7 @@ class MinimalDynamicMetamodelTest {
     private final Logger logger = LoggerFactory.getLogger("JPlag-Test");
 
     private static final Path BASE_PATH = Path.of("src", "test", "resources", "de", "jplag", "models");
-    private static final String[] TEST_SUBJECT = {"bookstore.ecore", "bookstoreExtended.ecore", "bookstoreRenamed.ecore"};
+    private static final String[] TEST_SUBJECTS = {"bookStore.ecore", "bookStoreExtended.ecore", "bookStoreRenamed.ecore"};
 
     private de.jplag.Language frontend;
     private File baseDirectory;
@@ -35,30 +36,28 @@ class MinimalDynamicMetamodelTest {
         TestErrorConsumer consumer = new TestErrorConsumer();
         frontend = new Language(consumer);
         baseDirectory = BASE_PATH.toFile();
-        assertTrue(baseDirectory.exists(), "Could not find base directory!");
+        FileUtil.assertDirectory(baseDirectory, TEST_SUBJECTS);
     }
 
     @Test
     void testBookstoreMetamodels() {
-        TokenList result = frontend.parse(baseDirectory, TEST_SUBJECT);
-        List<String> treeViewFiles = Arrays.stream(TEST_SUBJECT).map(it -> it + Language.VIEW_FILE_SUFFIX).collect(toList());
-
+        TokenList result = frontend.parse(baseDirectory, TEST_SUBJECTS);
+        List<String> treeViewFiles = Arrays.stream(TEST_SUBJECTS).map(it -> it + Language.VIEW_FILE_SUFFIX).collect(toList());
         logger.debug(TokenPrinter.printTokens(result, baseDirectory, treeViewFiles));
         logger.info(("Dynamic token set: " + DynamicMetamodelTokenConstants.getTokenStrings()));
         logger.info("parsed tokens: " + result.allTokens().toString());
         assertEquals(7, DynamicMetamodelTokenConstants.getTokenStrings().size());
         assertEquals(64, result.size());
 
-        var bookstoreTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECT[0]);
-        var bookstoreRenamedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECT[2]);
-        var bookstoreExtendedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECT[1]);
+        var bookstoreTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECTS[0]);
+        var bookstoreRenamedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECTS[2]);
+        var bookstoreExtendedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECTS[1]);
         assertTrue(bookstoreTokens.size() < bookstoreExtendedTokens.size());
         assertIterableEquals(bookstoreTokens, bookstoreRenamedTokens);
     }
 
     @AfterEach
     public void tearDown() {
-        File baseFile = new File(BASE_PATH.toString());
-        Arrays.stream(baseFile.listFiles()).filter(it -> it.getName().endsWith(Language.VIEW_FILE_SUFFIX)).forEach(File::delete);
+        FileUtil.clearFiles(new File(BASE_PATH.toString()), Language.VIEW_FILE_SUFFIX);
     }
 }

+ 1 - 0
jplag.frontend.emf-metamodel/src/main/java/de/jplag/emf/parser/EcoreParser.java

@@ -11,6 +11,7 @@ import de.jplag.TokenConstants;
 import de.jplag.TokenList;
 import de.jplag.emf.Language;
 import de.jplag.emf.MetamodelToken;
+import de.jplag.emf.util.EMFUtil;
 
 /**
  * Parser for EMF metamodels.

+ 1 - 1
jplag.frontend.emf-metamodel/src/main/java/de/jplag/emf/parser/EMFUtil.java → jplag.frontend.emf-metamodel/src/main/java/de/jplag/emf/util/EMFUtil.java

@@ -1,4 +1,4 @@
-package de.jplag.emf.parser;
+package de.jplag.emf.util;
 
 import java.io.File;
 import java.util.Collection;

+ 9 - 9
jplag.frontend.emf-metamodel/src/test/java/de/jplag/emf/MinimalMetamodelTest.java

@@ -19,6 +19,7 @@ import org.slf4j.LoggerFactory;
 
 import de.jplag.TokenList;
 import de.jplag.TokenPrinter;
+import de.jplag.testutils.FileUtil;
 import de.jplag.testutils.TestErrorConsumer;
 import de.jplag.testutils.TokenUtils;
 
@@ -26,7 +27,7 @@ class MinimalMetamodelTest {
     private final Logger logger = LoggerFactory.getLogger("JPlag-Test");
 
     private static final Path BASE_PATH = Path.of("src", "test", "resources", "de", "jplag", "models");
-    private static final String[] TEST_SUBJECT = {"bookstore.ecore", "bookstoreExtended.ecore", "bookstoreRenamed.ecore"};
+    private static final String[] TEST_SUBJECTS = {"bookStore.ecore", "bookStoreExtended.ecore", "bookStoreRenamed.ecore"};
 
     private de.jplag.Language frontend;
     private File baseDirectory;
@@ -36,13 +37,13 @@ class MinimalMetamodelTest {
         TestErrorConsumer consumer = new TestErrorConsumer();
         frontend = new Language(consumer);
         baseDirectory = BASE_PATH.toFile();
-        assertTrue(baseDirectory.exists(), "Could not find base directory!");
+        FileUtil.assertDirectory(baseDirectory, TEST_SUBJECTS);
     }
 
     @Test
     void testBookstoreMetamodels() {
-        TokenList result = frontend.parse(baseDirectory, TEST_SUBJECT);
-        List<String> treeViewFiles = Arrays.stream(TEST_SUBJECT).map(it -> it + Language.VIEW_FILE_SUFFIX).collect(toList());
+        TokenList result = frontend.parse(baseDirectory, TEST_SUBJECTS);
+        List<String> treeViewFiles = Arrays.stream(TEST_SUBJECTS).map(it -> it + Language.VIEW_FILE_SUFFIX).collect(toList());
 
         logger.debug(TokenPrinter.printTokens(result, baseDirectory, treeViewFiles));
         Field[] fields = MetamodelTokenConstants.class.getFields();
@@ -52,17 +53,16 @@ class MinimalMetamodelTest {
         assertEquals(21, constants.size());
         assertEquals(43, result.size());
 
-        var bookstoreTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECT[0]);
-        var bookstoreRenamedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECT[2]);
-        var bookstoreExtendedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECT[1]);
+        var bookstoreTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECTS[0]);
+        var bookstoreRenamedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECTS[2]);
+        var bookstoreExtendedTokens = TokenUtils.tokenTypesByFile(result, TEST_SUBJECTS[1]);
         assertTrue(bookstoreTokens.size() < bookstoreExtendedTokens.size());
         assertIterableEquals(bookstoreTokens, bookstoreRenamedTokens);
     }
 
     @AfterEach
     public void tearDown() {
-        File baseFile = new File(BASE_PATH.toString());
-        Arrays.stream(baseFile.listFiles()).filter(it -> it.getName().endsWith(Language.VIEW_FILE_SUFFIX)).forEach(File::delete);
+        FileUtil.clearFiles(new File(BASE_PATH.toString()), Language.VIEW_FILE_SUFFIX);
     }
 
 }

+ 1 - 1
jplag.frontend.emf-model/src/main/java/de/jplag/emf/model/parser/DynamicModelParser.java

@@ -10,7 +10,7 @@ import org.slf4j.LoggerFactory;
 
 import de.jplag.ErrorConsumer;
 import de.jplag.emf.dynamic.parser.DynamicEcoreParser;
-import de.jplag.emf.parser.EMFUtil;
+import de.jplag.emf.util.EMFUtil;
 
 /**
  * Parser for EMF metamodels based on dynamically created tokens.

+ 4 - 4
jplag.frontend.emf-model/src/test/java/de/jplag/emf/model/MinimalModelInstanceTest.java

@@ -3,7 +3,6 @@ package de.jplag.emf.model;
 import static java.util.stream.Collectors.toList;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.File;
 import java.nio.file.Path;
@@ -20,12 +19,14 @@ import org.slf4j.LoggerFactory;
 import de.jplag.TokenList;
 import de.jplag.TokenPrinter;
 import de.jplag.emf.dynamic.DynamicMetamodelTokenConstants;
+import de.jplag.testutils.FileUtil;
 import de.jplag.testutils.TestErrorConsumer;
 
 class MinimalModelInstanceTest {
     private final Logger logger = LoggerFactory.getLogger("JPlag-Test");
 
     private static final Path BASE_PATH = Path.of("src", "test", "resources", "de", "jplag", "books");
+    private static final String[] TEST_SUBJECTS = {"bookStore.ecore", "bookStore.xml", "bookStore2.xml"};
 
     private Language frontend;
     private File baseDirectory;
@@ -35,7 +36,7 @@ class MinimalModelInstanceTest {
         TestErrorConsumer consumer = new TestErrorConsumer();
         frontend = new Language(consumer);
         baseDirectory = BASE_PATH.toFile();
-        assertTrue(baseDirectory.exists(), "Could not find base directory!");
+        FileUtil.assertDirectory(baseDirectory, TEST_SUBJECTS);
     }
 
     @Test
@@ -57,8 +58,7 @@ class MinimalModelInstanceTest {
 
     @AfterEach
     public void tearDown() {
-        File baseFile = new File(BASE_PATH.toString());
-        Arrays.stream(baseFile.listFiles()).filter(it -> it.getName().endsWith(Language.VIEW_FILE_SUFFIX)).forEach(File::delete);
+        FileUtil.clearFiles(new File(BASE_PATH.toString()), Language.VIEW_FILE_SUFFIX);
     }
 
 }