diff --git a/Dockerfile b/Dockerfile
index 0bae30ef30f525839a469b77dfa3a578db9afcca..4fb8de9a5a2f41c43aabd450897aa2cea4e24f83 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,22 +1,22 @@
from openjdk:11-jdk-slim
-env MODOCOT_BASEDIR /modocot
-env MODOCOT_TESTDIR $MODOCOT_BASEDIR/test
-env MODOCOT_SOURCEDIR $MODOCOT_BASEDIR/src
-env MODOCOT_RESULTDIR $MODOCOT_BASEDIR/result
-env MODOCOT_LIBSDIR $MODOCOT_BASEDIR/libs
+env BASEDIR /data
+env TESTDIR $BASEDIR/test
+env SOURCEDIR $BASEDIR/src
+env RESULTDIR $BASEDIR/result
+env LIBSDIR $BASEDIR/libs
-run mkdir -p $MODOCOT_TESTDIR \
- && mkdir $MODOCOT_SOURCEDIR \
- && mkdir $MODOCOT_RESULTDIR \
- && mkdir -p /$MODOCOT_LIBSDIR/additional
+run mkdir -p $TESTDIR \
+ && mkdir $SOURCEDIR \
+ && mkdir $RESULTDIR \
+ && mkdir -p /$LIBSDIR/additional
-add target/modocot-openjdk11-junit5-runner-jar-with-dependencies.jar /$MODOCOT_BASEDIR/app.jar
-add https://repo1.maven.org/maven2/org/junit/jupiter/junit-jupiter-api/5.7.0/junit-jupiter-api-5.7.0.jar /$MODOCOT_LIBSDIR/
-add https://repo1.maven.org/maven2/org/junit/jupiter/junit-jupiter-engine/5.7.0/junit-jupiter-engine-5.7.0.jar /$MODOCOT_LIBSDIR/
-add https://repo1.maven.org/maven2/org/apiguardian/apiguardian-api/1.1.1/apiguardian-api-1.1.1.jar /$MODOCOT_LIBSDIR/
-add https://repo1.maven.org/maven2/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar /$MODOCOT_LIBSDIR/
+add target/dtt-openjdk11-junit5-runner-jar-with-dependencies.jar /$BASEDIR/app.jar
+add https://repo1.maven.org/maven2/org/junit/jupiter/junit-jupiter-api/5.7.0/junit-jupiter-api-5.7.0.jar /$LIBSDIR/
+add https://repo1.maven.org/maven2/org/junit/jupiter/junit-jupiter-engine/5.7.0/junit-jupiter-engine-5.7.0.jar /$LIBSDIR/
+add https://repo1.maven.org/maven2/org/apiguardian/apiguardian-api/1.1.1/apiguardian-api-1.1.1.jar /$LIBSDIR/
+add https://repo1.maven.org/maven2/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar /$LIBSDIR/
-workdir /modocot
+workdir $BASEDIR
-entrypoint java -Djava.security.egd=file:/dev/./urandom -jar /modocot/app.jar "$MODOCOT_SOURCEDIR/src:$MODOCOT_TESTDIR/test" "$MODOCOT_LIBSDIR/*:$MODOCOT_TESTDIR/libs/*" $MODOCOT_RESULTDIR
+entrypoint java -Djava.security.egd=file:/dev/./urandom -jar /$BASEDIR/app.jar "$SOURCEDIR/src:$TESTDIR/test" "$LIBSDIR/*:$TESTDIR/libs/*" $RESULTDIR
diff --git a/Jenkinsfile b/Jenkinsfile
index a3ce380b10d82bc611e3bd6e5ee0defa138c075a..9f7c36de9d99c12093306d2a2605e50cdb68744f 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -4,7 +4,7 @@ def version = ""
pipeline {
environment {
- registry = "hftstuttgart/modocot-openjdk11-junit5-testrunner"
+ registry = "hftstuttgart/dtt-openjdk11-junit5-testrunner"
registryCredential = 'Dockerhub'
dockerImage = ''
}
diff --git a/pom.xml b/pom.xml
index a1d88292ed85b67e88b7a78f4e5380b544d5a98a..2de56b311d33e88774cd2c5c6ae1c54f80ef5743 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
de.hftstuttgart
- modocot-openjdk11-junit5-runner
+ dtt-openjdk11-junit5-runner
${buildNumber}
jar
@@ -72,7 +72,7 @@
- de.hftstuttgart.modocot.Testrunner
+ de.hftstuttgart.dtt.Testrunner
diff --git a/src/main/java/de/hftstuttgart/modocot/Testrunner.java b/src/main/java/de/hftstuttgart/dtt/Testrunner.java
similarity index 84%
rename from src/main/java/de/hftstuttgart/modocot/Testrunner.java
rename to src/main/java/de/hftstuttgart/dtt/Testrunner.java
index c0d61b36ce2d1e472e63cf6252b4a209b126c9c2..7e3ddcb3ba14ea98c4809ed8a94c2b87a1869d30 100644
--- a/src/main/java/de/hftstuttgart/modocot/Testrunner.java
+++ b/src/main/java/de/hftstuttgart/dtt/Testrunner.java
@@ -1,8 +1,8 @@
-package de.hftstuttgart.modocot;
+package de.hftstuttgart.dtt;
-import de.hftstuttgart.modocot.model.ModocotResult;
-import de.hftstuttgart.modocot.model.ModocotResultSummary;
-import de.hftstuttgart.modocot.util.ModocotSummaryGeneratingListener;
+import de.hftstuttgart.dtt.model.Result;
+import de.hftstuttgart.dtt.model.ResultSummary;
+import de.hftstuttgart.dtt.util.MySummaryGeneratingListener;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -71,7 +71,7 @@ public class Testrunner
sourceFolders = args[0].split(":");
libraryFolders = args[1].split(":");
resultFolder = args[2];
- classFolder = Files.createTempDirectory("modocot-testrunner").toAbsolutePath().toString();
+ classFolder = Files.createTempDirectory("testrunner").toAbsolutePath().toString();
// finding all source files
Set sourceFiles = new HashSet<>();
@@ -81,13 +81,13 @@ public class Testrunner
}
// call compilation and generate Results for failed compiles
- Set compilationErrors = generateCompileResults(compile(sourceFiles, new File(classFolder)));
+ Set compilationErrors = generateCompileResults(compile(sourceFiles, new File(classFolder)));
// run unit tests found in the compiled class files
- ModocotResultSummary resultSummary = runTests();
+ ResultSummary resultSummary = runTests();
// add compilation errors to summary
- resultSummary.compilationErrors = compilationErrors;
+ resultSummary.results.addAll(compilationErrors);
// serialize result
writeResult(resultSummary);
@@ -208,16 +208,16 @@ public class Testrunner
return URLClassLoader.newInstance(urls, parentClassLoader);
}
- public static Set generateCompileResults(List compilationErrors)
+ public static Set generateCompileResults(List compilationErrors)
{
return compilationErrors.stream().map(e ->
{
- ModocotResult result = new ModocotResult();
+ Result result = new Result();
Pattern pattern = Pattern.compile(String.format("^.*%s(.*\\.java).*$", File.separator));
Matcher matcher = pattern.matcher(String.valueOf(e.getSource()));
result.name = (matcher.matches() && matcher.group(1) != null) ? matcher.group(1) : String.valueOf(e.getSource());
- result.state = ModocotResult.State.FAILURE.ordinal();
+ result.state = Result.State.COMPILATIONERROR.ordinal();
result.failureReason = e.getMessage(Locale.ENGLISH);
result.failureType = "Compilation Failed";
result.stacktrace = e.toString();
@@ -231,7 +231,7 @@ public class Testrunner
.collect(Collectors.toCollection(HashSet::new));
}
- public static ModocotResultSummary generateResultSummary(TestExecutionSummary summary, Set successes)
+ public static ResultSummary generateResultSummary(TestExecutionSummary summary, Set successes)
{
LOG.info("JUnit results:");
LOG.info(String.format(
@@ -246,22 +246,22 @@ public class Testrunner
.reduce((s1, s2) -> s1 + ":" + s2).orElse("-")
));
- ModocotResultSummary resultSummary = new ModocotResultSummary();
- resultSummary.successes = successes.stream().map(s ->
+ ResultSummary resultSummary = new ResultSummary();
+ resultSummary.results.addAll(successes.stream().map(s ->
{
- ModocotResult result = new ModocotResult();
+ Result result = new Result();
result.name = s.getDisplayName();
- result.state = ModocotResult.State.SUCCESS.ordinal();
+ result.state = Result.State.SUCCESS.ordinal();
return result;
})
- .collect(Collectors.toCollection(HashSet::new));
+ .collect(Collectors.toCollection(HashSet::new)));
- resultSummary.failures = summary.getFailures().stream().map(f ->
+ resultSummary.results.addAll(summary.getFailures().stream().map(f ->
{
- ModocotResult result = new ModocotResult();
+ Result result = new Result();
result.name = f.getTestIdentifier().getDisplayName();
- result.state = ModocotResult.State.FAILURE.ordinal();
+ result.state = Result.State.FAILURE.ordinal();
result.failureReason = f.getException().getMessage();
result.failureType = f.getException().getClass().getName();
@@ -272,12 +272,7 @@ public class Testrunner
return result;
})
- .collect(Collectors.toCollection(HashSet::new));
-
- resultSummary.timestamp = System.currentTimeMillis() / 1000;
- resultSummary.testCount = (int) summary.getTestsStartedCount();
- resultSummary.successCount = resultSummary.successes.size();
- resultSummary.failureCount = resultSummary.failures.size();
+ .collect(Collectors.toCollection(HashSet::new)));
return resultSummary;
}
@@ -313,7 +308,7 @@ public class Testrunner
return files;
}
- public static ModocotResultSummary runTests() throws MalformedURLException
+ public static ResultSummary runTests() throws MalformedURLException
{
classPathItems = buildClassPathItems(true);
LOG.info("saving original class loader");
@@ -332,7 +327,7 @@ public class Testrunner
.selectors(DiscoverySelectors.selectClasspathRoots(Collections.singleton(Paths.get(classFolder).toAbsolutePath())))
.build();
- ModocotSummaryGeneratingListener listener = new ModocotSummaryGeneratingListener();
+ MySummaryGeneratingListener listener = new MySummaryGeneratingListener();
Launcher launcher = LauncherFactory.create();
launcher.registerTestExecutionListeners(listener);
@@ -359,14 +354,14 @@ public class Testrunner
Thread.currentThread().setContextClassLoader(originalClassLoader);
}
- LOG.info("generate modocot result summary from junit");
+ LOG.info("generate result summary from junit");
return generateResultSummary(summary, successes);
}
- public static void writeResult(ModocotResultSummary resultSummary) throws IOException
+ public static void writeResult(ResultSummary resultSummary) throws IOException
{
Path fileName = Paths.get(resultFolder, "result.json");
- LOG.info(String.format("serializing modocdot result as json into %s", fileName.toAbsolutePath().toString()));
+ LOG.info(String.format("serializing result as json into %s", fileName.toAbsolutePath().toString()));
ObjectMapper objectMapper = new ObjectMapper();
objectMapper
.writerWithDefaultPrettyPrinter()
diff --git a/src/main/java/de/hftstuttgart/modocot/model/ModocotResult.java b/src/main/java/de/hftstuttgart/dtt/model/Result.java
similarity index 77%
rename from src/main/java/de/hftstuttgart/modocot/model/ModocotResult.java
rename to src/main/java/de/hftstuttgart/dtt/model/Result.java
index 955ed6211ebaa43ec257855c57ca3ed1f1f6416f..b6338ca73f54cff9c6d857276bd6847f9616a306 100644
--- a/src/main/java/de/hftstuttgart/modocot/model/ModocotResult.java
+++ b/src/main/java/de/hftstuttgart/dtt/model/Result.java
@@ -1,6 +1,6 @@
-package de.hftstuttgart.modocot.model;
+package de.hftstuttgart.dtt.model;
-public class ModocotResult
+public class Result
{
public String name;
public int state;
@@ -16,8 +16,9 @@ public class ModocotResult
public static enum State
{
+ UNKNOWN,
SUCCESS,
FAILURE,
- UNKNOWN
+ COMPILATIONERROR,
}
}
diff --git a/src/main/java/de/hftstuttgart/dtt/model/ResultSummary.java b/src/main/java/de/hftstuttgart/dtt/model/ResultSummary.java
new file mode 100644
index 0000000000000000000000000000000000000000..6aa66545941c71308fcf62184c278b2f487457d5
--- /dev/null
+++ b/src/main/java/de/hftstuttgart/dtt/model/ResultSummary.java
@@ -0,0 +1,11 @@
+package de.hftstuttgart.dtt.model;
+
+import java.util.HashSet;
+import java.util.Set;
+
+public class ResultSummary
+{
+ public long timestamp = System.currentTimeMillis() / 1000;
+ public String globalStacktrace = null;
+ public Set results = new HashSet<>();
+}
diff --git a/src/main/java/de/hftstuttgart/modocot/util/ModocotSummaryGeneratingListener.java b/src/main/java/de/hftstuttgart/dtt/util/MySummaryGeneratingListener.java
similarity index 85%
rename from src/main/java/de/hftstuttgart/modocot/util/ModocotSummaryGeneratingListener.java
rename to src/main/java/de/hftstuttgart/dtt/util/MySummaryGeneratingListener.java
index d566510ebe4ef246b280e6495a7b2144fdad2d23..e91a0e211405b15a5d2e30df8e349faff16a8a60 100644
--- a/src/main/java/de/hftstuttgart/modocot/util/ModocotSummaryGeneratingListener.java
+++ b/src/main/java/de/hftstuttgart/dtt/util/MySummaryGeneratingListener.java
@@ -1,4 +1,4 @@
-package de.hftstuttgart.modocot.util;
+package de.hftstuttgart.dtt.util;
import org.junit.platform.engine.TestDescriptor;
import org.junit.platform.engine.TestExecutionResult;
@@ -8,7 +8,7 @@ import org.junit.platform.launcher.listeners.SummaryGeneratingListener;
import java.util.HashSet;
import java.util.Set;
-public class ModocotSummaryGeneratingListener extends SummaryGeneratingListener
+public class MySummaryGeneratingListener extends org.junit.platform.launcher.listeners.SummaryGeneratingListener
{
protected Set successful = new HashSet<>();
diff --git a/src/main/java/de/hftstuttgart/modocot/util/logging/CustomFormatter.java b/src/main/java/de/hftstuttgart/dtt/util/logging/CustomFormatter.java
similarity index 91%
rename from src/main/java/de/hftstuttgart/modocot/util/logging/CustomFormatter.java
rename to src/main/java/de/hftstuttgart/dtt/util/logging/CustomFormatter.java
index 197c6d1a57b7cec4813b3a66cecbf3726a6ff77e..2deee43c01dca0e5906df89b1910695b0c882dcf 100644
--- a/src/main/java/de/hftstuttgart/modocot/util/logging/CustomFormatter.java
+++ b/src/main/java/de/hftstuttgart/dtt/util/logging/CustomFormatter.java
@@ -1,4 +1,4 @@
-package de.hftstuttgart.modocot.util.logging;
+package de.hftstuttgart.dtt.util.logging;
import java.util.Date;
import java.util.logging.LogRecord;
diff --git a/src/main/java/de/hftstuttgart/modocot/model/ModocotResultSummary.java b/src/main/java/de/hftstuttgart/modocot/model/ModocotResultSummary.java
deleted file mode 100644
index a9e563cbcdeea45ce9de8a5cd3a36bac793a62a1..0000000000000000000000000000000000000000
--- a/src/main/java/de/hftstuttgart/modocot/model/ModocotResultSummary.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package de.hftstuttgart.modocot.model;
-
-import java.util.Set;
-
-public class ModocotResultSummary
-{
- public long timestamp;
- public int testCount;
- public int failureCount;
- public int successCount;
- public String globalStacktrace;
-
- public Set successes;
- public Set failures;
- public Set compilationErrors;
-}
diff --git a/src/main/resources/logging.properties b/src/main/resources/logging.properties
index 175a2e3cbcf0c35a32ee1e8964be6220d8a98dac..ba6bc52110e639f0e9f46c6eb08e2e91a7e7eac2 100644
--- a/src/main/resources/logging.properties
+++ b/src/main/resources/logging.properties
@@ -1,4 +1,4 @@
handlers=java.util.logging.ConsoleHandler
.level = INFO
java.util.logging.ConsoleHandler.level=INFO
-java.util.logging.ConsoleHandler.formatter=de.hftstuttgart.modocot.util.logging.CustomFormatter
+java.util.logging.ConsoleHandler.formatter=de.hftstuttgart.dtt.util.logging.CustomFormatter