diff --git a/base/build.gradle b/base/build.gradle
index 462cccc0..85a8150f 100644
--- a/base/build.gradle
+++ b/base/build.gradle
@@ -18,9 +18,6 @@
*/
import java.nio.file.Files
-
-
-
// Plugins
plugins {
id("java")
@@ -135,6 +132,11 @@ javadoc {
// Unit testing configuration
test {
useJUnitPlatform()
+
+ setMaxParallelForks(project.hasProperty("jobs") ? Integer.parseInt((String) project.property("jobs")) : 8)
+ setForkEvery(1)
+ setFailFast(true)
+
testLogging {
events("passed", "skipped", "failed")
}
diff --git a/base/src/main/java/de/staropensource/sosengine/base/EngineConfiguration.java b/base/src/main/java/de/staropensource/sosengine/base/EngineConfiguration.java
index 6c90c5ba..49646811 100644
--- a/base/src/main/java/de/staropensource/sosengine/base/EngineConfiguration.java
+++ b/base/src/main/java/de/staropensource/sosengine/base/EngineConfiguration.java
@@ -411,13 +411,4 @@ public final class EngineConfiguration implements SubsystemConfiguration {
default -> { return null; }
}
}
-
- /**
- * Clears {@code instance}. Used in unit tests.
- *
- * @since v1-alpha1
- */
- private static void clearInstance() {
- instance = null;
- }
}
diff --git a/base/src/main/java/de/staropensource/sosengine/base/utility/PlaceholderEngine.java b/base/src/main/java/de/staropensource/sosengine/base/utility/PlaceholderEngine.java
index ddf7306d..9c1790d5 100644
--- a/base/src/main/java/de/staropensource/sosengine/base/utility/PlaceholderEngine.java
+++ b/base/src/main/java/de/staropensource/sosengine/base/utility/PlaceholderEngine.java
@@ -89,8 +89,6 @@ public final class PlaceholderEngine {
placeholders.add(new DateMonth());
placeholders.add(new DateYear());
// engine_dependency_*
- placeholders.add(new EngineDependencyLombok());
- placeholders.add(new EngineDependencyJetbrainsAnnotations());
placeholders.add(new EngineDependencyJansi());
placeholders.add(new EngineDependencyLwjgl());
placeholders.add(new EngineDependencyReflections());
@@ -164,13 +162,4 @@ public final class PlaceholderEngine {
public String process(@NotNull String text) {
return process(text, new ArrayList<>());
}
-
- /**
- * Clears {@code instance}. Used in unit tests.
- *
- * @since v1-alpha1
- */
- private static void clearInstance() {
- instance = null;
- }
}
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/EngineConfigurationTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/EngineConfigurationTest.java
index 00ad6892..a7735149 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/EngineConfigurationTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/EngineConfigurationTest.java
@@ -20,18 +20,11 @@
package de.staropensource.sosengine.base.srctests;
import de.staropensource.sosengine.base.EngineConfiguration;
-import de.staropensource.sosengine.base.exceptions.UnexpectedThrowableException;
-import de.staropensource.sosengine.base.exceptions.reflection.InvalidMethodException;
-import de.staropensource.sosengine.base.reflection.Reflect;
import de.staropensource.sosengine.base.types.logging.LogLevel;
-import de.staropensource.sosengine.unittests.UnitLogger;
import org.jetbrains.annotations.NotNull;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
-import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
@@ -43,40 +36,19 @@ import static org.junit.jupiter.api.Assertions.*;
*/
@SuppressWarnings("unused")
@DisplayName("EngineConfiguration")
-class EngineConfigurationTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(EngineConfigurationTest.class);
-
+class EngineConfigurationTest extends TestBase {
/**
* The property group for the base engine.
*/
private final String group = EngineConfiguration.getGroup();
- /**
- * Initializes the {@link EngineConfiguration} class before each test.
- */
- @BeforeEach
- void initializeClass() {
- new EngineConfiguration();
- }
-
- /**
- * Sets the {@link EngineConfiguration}#{@code instance} to {@code null} after each test.
- */
- @AfterEach
- void clearInstance() throws InvalidMethodException, UnexpectedThrowableException, InvocationTargetException {
- Reflect.reflectOn(EngineConfiguration.class).getMethod("clearInstance").invoke();
- }
-
/**
* Tests the method {@code loadConfiguration}.
*/
@Test
@DisplayName("Method loadConfiguration")
void testLoadConfiguration() {
- logger.testCall("testLoadConfiguration");
+ getLogger().testCall("testLoadConfiguration");
Map<@NotNull String, @NotNull Object[]> settings = new HashMap<>();
Map<@NotNull String, @NotNull Object> defaultValues = new HashMap<>();
@@ -120,9 +92,9 @@ class EngineConfigurationTest {
Object defaultValue = defaultValues.get(setting);
Object customValue = EngineConfiguration.getInstance().getSetting(setting);
- logger.diag("Comparing setting " + setting + "(not equals defaultValue)");
+ getLogger().diag("Comparing setting " + setting + "(not equals defaultValue)");
assertNotEquals(defaultValue, customValue);
- logger.diag("Comparing setting " + setting + "(equals expected value)");
+ getLogger().diag("Comparing setting " + setting + "(equals expected value)");
assertEquals(settings.get(setting)[1], customValue);
}
}
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/TestBase.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/TestBase.java
new file mode 100644
index 00000000..b121d452
--- /dev/null
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/TestBase.java
@@ -0,0 +1,72 @@
+/*
+ * STAROPENSOURCE ENGINE SOURCE FILE
+ * Copyright (c) 2024 The StarOpenSource Engine Contributors
+ * Licensed under the GNU Affero General Public License v3
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+
+package de.staropensource.sosengine.base.srctests;
+
+import de.staropensource.sosengine.base.Engine;
+import de.staropensource.sosengine.unittests.UnitLogger;
+import lombok.Getter;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+
+/**
+ * A class implemented by all tests.
+ */
+@SuppressWarnings({ "unused" })
+public class TestBase {
+ /**
+ * Instance of this test class.
+ * -- GETTER --
+ * Returns the instance of this test class.
+ */
+ @Getter
+ private static TestBase instance;
+
+ /**
+ * The unit logger for this test class.
+ * -- GETTER --
+ * Returns the unit logger for this test class.
+ */
+ @Getter
+ private final UnitLogger logger = new UnitLogger(getClass());
+
+ /**
+ * Determines whether the engine should be automatically initialized or not.
+ */
+ protected boolean doInitialization = true;
+
+ /**
+ * Constructs this class.
+ */
+ public TestBase() {
+ // JUnit for some reason recreates the test class every time a test method is called
+ // Therefore we don't throw or complain here, instead we just override 'instance' and
+ // hope nothing breaks.
+ instance = this;
+ }
+
+ /**
+ * Initializes the engine before running tests.
+ */
+ @BeforeEach
+ void initializeEngine() {
+ if (doInitialization && Engine.getInstance() == null)
+ new Engine();
+ }
+}
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/FourNumberVersioningSystemTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/FourNumberVersioningSystemTest.java
index 6381b9e7..9d128322 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/FourNumberVersioningSystemTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/FourNumberVersioningSystemTest.java
@@ -21,12 +21,10 @@ package de.staropensource.sosengine.base.srctests.data.versioning;
import de.staropensource.sosengine.base.data.versioning.FourNumberVersioningSystem;
import de.staropensource.sosengine.base.exceptions.versioning.InvalidVersionStringException;
-import de.staropensource.sosengine.unittests.UnitLogger;
+import de.staropensource.sosengine.base.srctests.TestBase;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
@@ -36,13 +34,7 @@ import static org.junit.jupiter.api.Assertions.fail;
*/
@SuppressWarnings({ "unused" })
@DisplayName("FourNumberVersioningSystem")
-public class FourNumberVersioningSystemTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(FourNumberVersioningSystemTest.class);
- private static final Logger log = LoggerFactory.getLogger(FourNumberVersioningSystemTest.class);
-
+public class FourNumberVersioningSystemTest extends TestBase {
/**
* Tests the method {@code compare}.
*/
@@ -58,14 +50,14 @@ public class FourNumberVersioningSystemTest {
"1.1.0.0, 1.1.1.1, 2",
})
void testCompare(String a, String b, int expected) throws Throwable {
- logger.testCall("testCompare", a, b, expected);
+ getLogger().testCall("testCompare", a, b, expected);
try {
assertEquals(expected, new FourNumberVersioningSystem(a).compare(new FourNumberVersioningSystem(b)));
} catch (InvalidVersionStringException exception) {
- logger.error("Got InvalidVersionStringException: " + exception.getMessage());
+ getLogger().error("Got InvalidVersionStringException: " + exception.getMessage());
if (exception.getThrowable() != null) {
- logger.error("Original stack trace:");
+ getLogger().error("Original stack trace:");
throw exception.getThrowable();
}
fail("Got InvalidVersionStringException");
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/OneNumberVersioningSystemTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/OneNumberVersioningSystemTest.java
index d8c5b5f7..7759b433 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/OneNumberVersioningSystemTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/OneNumberVersioningSystemTest.java
@@ -22,12 +22,10 @@ package de.staropensource.sosengine.base.srctests.data.versioning;
import de.staropensource.sosengine.base.data.versioning.OneNumberVersioningSystem;
import de.staropensource.sosengine.base.data.versioning.TwoNumberVersioningSystem;
import de.staropensource.sosengine.base.exceptions.versioning.InvalidVersionStringException;
-import de.staropensource.sosengine.unittests.UnitLogger;
+import de.staropensource.sosengine.base.srctests.TestBase;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
@@ -37,13 +35,7 @@ import static org.junit.jupiter.api.Assertions.fail;
*/
@SuppressWarnings({ "unused" })
@DisplayName("OneNumberVersioningSystem")
-public class OneNumberVersioningSystemTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(OneNumberVersioningSystemTest.class);
- private static final Logger log = LoggerFactory.getLogger(OneNumberVersioningSystemTest.class);
-
+public class OneNumberVersioningSystemTest extends TestBase {
/**
* Tests the method {@code compare}.
*/
@@ -55,14 +47,14 @@ public class OneNumberVersioningSystemTest {
"1, 2, 2",
})
void testCompare(String a, String b, int expected) throws Throwable {
- logger.testCall("testCompare", a, b, expected);
+ getLogger().testCall("testCompare", a, b, expected);
try {
assertEquals(expected, new OneNumberVersioningSystem(a).compare(new OneNumberVersioningSystem(b)));
} catch (InvalidVersionStringException exception) {
- logger.error("Got InvalidVersionStringException: " + exception.getMessage());
+ getLogger().error("Got InvalidVersionStringException: " + exception.getMessage());
if (exception.getThrowable() != null) {
- logger.error("Original stack trace:");
+ getLogger().error("Original stack trace:");
throw exception.getThrowable();
}
fail("Got InvalidVersionStringException");
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/SemanticVersioningSystemTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/SemanticVersioningSystemTest.java
index 02926b7c..fce57117 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/SemanticVersioningSystemTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/SemanticVersioningSystemTest.java
@@ -21,12 +21,10 @@ package de.staropensource.sosengine.base.srctests.data.versioning;
import de.staropensource.sosengine.base.data.versioning.SemanticVersioningSystem;
import de.staropensource.sosengine.base.exceptions.versioning.InvalidVersionStringException;
-import de.staropensource.sosengine.unittests.UnitLogger;
+import de.staropensource.sosengine.base.srctests.TestBase;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
@@ -36,13 +34,7 @@ import static org.junit.jupiter.api.Assertions.fail;
*/
@SuppressWarnings({ "unused" })
@DisplayName("SemanticVersioningSystem")
-public class SemanticVersioningSystemTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(SemanticVersioningSystemTest.class);
- private static final Logger log = LoggerFactory.getLogger(SemanticVersioningSystemTest.class);
-
+public class SemanticVersioningSystemTest extends TestBase {
/**
* Tests the method {@code compare}.
*/
@@ -63,14 +55,14 @@ public class SemanticVersioningSystemTest {
"1.1.0+5, 1.1.0+6, 2",
})
void testCompare(String a, String b, int expected) throws Throwable {
- logger.testCall("testCompare", a, b, expected);
+ getLogger().testCall("testCompare", a, b, expected);
try {
assertEquals(expected, new SemanticVersioningSystem(a).compare(new SemanticVersioningSystem(b)));
} catch (InvalidVersionStringException exception) {
- logger.error("Got InvalidVersionStringException: " + exception.getMessage());
+ getLogger().error("Got InvalidVersionStringException: " + exception.getMessage());
if (exception.getThrowable() != null) {
- logger.error("Original stack trace:");
+ getLogger().error("Original stack trace:");
throw exception.getThrowable();
}
fail("Got InvalidVersionStringException");
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/StarOpenSourceVersioningSystemTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/StarOpenSourceVersioningSystemTest.java
index a83f35f0..7912f731 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/StarOpenSourceVersioningSystemTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/StarOpenSourceVersioningSystemTest.java
@@ -22,7 +22,7 @@ package de.staropensource.sosengine.base.srctests.data.versioning;
import de.staropensource.sosengine.base.data.versioning.SemanticVersioningSystem;
import de.staropensource.sosengine.base.data.versioning.StarOpenSourceVersioningSystem;
import de.staropensource.sosengine.base.exceptions.versioning.InvalidVersionStringException;
-import de.staropensource.sosengine.unittests.UnitLogger;
+import de.staropensource.sosengine.base.srctests.TestBase;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
@@ -35,12 +35,7 @@ import static org.junit.jupiter.api.Assertions.fail;
*/
@SuppressWarnings({ "unused" })
@DisplayName("StarOpenSourceVersioningSystem")
-public class StarOpenSourceVersioningSystemTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(StarOpenSourceVersioningSystemTest.class);
-
+public class StarOpenSourceVersioningSystemTest extends TestBase {
/**
* Tests the method {@code compare}.
*/
@@ -59,14 +54,14 @@ public class StarOpenSourceVersioningSystemTest {
"v9-beta5, v9-releasecandidate1, 2",
})
void testCompare(String a, String b, int expected) throws Throwable {
- logger.testCall("testCompare", a, b, expected);
+ getLogger().testCall("testCompare", a, b, expected);
try {
assertEquals(expected, new StarOpenSourceVersioningSystem(a).compare(new StarOpenSourceVersioningSystem(b)));
} catch (InvalidVersionStringException exception) {
- logger.error("Got InvalidVersionStringException: " + exception.getMessage());
+ getLogger().error("Got InvalidVersionStringException: " + exception.getMessage());
if (exception.getThrowable() != null) {
- logger.error("Original stack trace:");
+ getLogger().error("Original stack trace:");
throw exception.getThrowable();
}
fail("Got InvalidVersionStringException");
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/ThreeNumberVersioningSystemTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/ThreeNumberVersioningSystemTest.java
index 939e929b..a80fb1ee 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/ThreeNumberVersioningSystemTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/ThreeNumberVersioningSystemTest.java
@@ -21,12 +21,10 @@ package de.staropensource.sosengine.base.srctests.data.versioning;
import de.staropensource.sosengine.base.data.versioning.ThreeNumberVersioningSystem;
import de.staropensource.sosengine.base.exceptions.versioning.InvalidVersionStringException;
-import de.staropensource.sosengine.unittests.UnitLogger;
+import de.staropensource.sosengine.base.srctests.TestBase;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
@@ -36,13 +34,7 @@ import static org.junit.jupiter.api.Assertions.fail;
*/
@SuppressWarnings({ "unused" })
@DisplayName("ThreeNumberVersioningSystem")
-public class ThreeNumberVersioningSystemTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(ThreeNumberVersioningSystemTest.class);
- private static final Logger log = LoggerFactory.getLogger(ThreeNumberVersioningSystemTest.class);
-
+public class ThreeNumberVersioningSystemTest extends TestBase {
/**
* Tests the method {@code compare}.
*/
@@ -54,14 +46,14 @@ public class ThreeNumberVersioningSystemTest {
"1.1.0, 1.1.1, 2",
})
void testCompare(String a, String b, int expected) throws Throwable {
- logger.testCall("testCompare", a, b, expected);
+ getLogger().testCall("testCompare", a, b, expected);
try {
assertEquals(expected, new ThreeNumberVersioningSystem(a).compare(new ThreeNumberVersioningSystem(b)));
} catch (InvalidVersionStringException exception) {
- logger.error("Got InvalidVersionStringException: " + exception.getMessage());
+ getLogger().error("Got InvalidVersionStringException: " + exception.getMessage());
if (exception.getThrowable() != null) {
- logger.error("Original stack trace:");
+ getLogger().error("Original stack trace:");
throw exception.getThrowable();
}
fail("Got InvalidVersionStringException");
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/TwoNumberVersioningSystemTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/TwoNumberVersioningSystemTest.java
index ee019939..ff0d7748 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/TwoNumberVersioningSystemTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/data/versioning/TwoNumberVersioningSystemTest.java
@@ -21,12 +21,10 @@ package de.staropensource.sosengine.base.srctests.data.versioning;
import de.staropensource.sosengine.base.data.versioning.TwoNumberVersioningSystem;
import de.staropensource.sosengine.base.exceptions.versioning.InvalidVersionStringException;
-import de.staropensource.sosengine.unittests.UnitLogger;
+import de.staropensource.sosengine.base.srctests.TestBase;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
@@ -36,13 +34,7 @@ import static org.junit.jupiter.api.Assertions.fail;
*/
@SuppressWarnings({ "unused" })
@DisplayName("TwoNumberVersioningSystem")
-public class TwoNumberVersioningSystemTest {
- /**
- * The unit logger for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(TwoNumberVersioningSystemTest.class);
- private static final Logger log = LoggerFactory.getLogger(TwoNumberVersioningSystemTest.class);
-
+public class TwoNumberVersioningSystemTest extends TestBase {
/**
* Tests the method {@code compare}.
*/
@@ -54,14 +46,14 @@ public class TwoNumberVersioningSystemTest {
"1.5, 2.0, 2",
})
void testCompare(String a, String b, int expected) throws Throwable {
- logger.testCall("testCompare", a, b, expected);
+ getLogger().testCall("testCompare", a, b, expected);
try {
assertEquals(expected, new TwoNumberVersioningSystem(a).compare(new TwoNumberVersioningSystem(b)));
} catch (InvalidVersionStringException exception) {
- logger.error("Got InvalidVersionStringException: " + exception.getMessage());
+ getLogger().error("Got InvalidVersionStringException: " + exception.getMessage());
if (exception.getThrowable() != null) {
- logger.error("Original stack trace:");
+ getLogger().error("Original stack trace:");
throw exception.getThrowable();
}
fail("Got InvalidVersionStringException");
diff --git a/base/src/test/java/de/staropensource/sosengine/base/srctests/utility/MiscellaneousTest.java b/base/src/test/java/de/staropensource/sosengine/base/srctests/utility/MiscellaneousTest.java
index 784a2bcd..46d5631f 100644
--- a/base/src/test/java/de/staropensource/sosengine/base/srctests/utility/MiscellaneousTest.java
+++ b/base/src/test/java/de/staropensource/sosengine/base/srctests/utility/MiscellaneousTest.java
@@ -22,12 +22,10 @@ package de.staropensource.sosengine.base.srctests.utility;
import de.staropensource.sosengine.base.EngineConfiguration;
import de.staropensource.sosengine.base.annotations.EventListener;
import de.staropensource.sosengine.base.events.ThrowableCatchEvent;
-import de.staropensource.sosengine.base.exceptions.UnexpectedThrowableException;
-import de.staropensource.sosengine.base.exceptions.reflection.InvalidMethodException;
import de.staropensource.sosengine.base.reflection.Reflect;
+import de.staropensource.sosengine.base.srctests.TestBase;
import de.staropensource.sosengine.base.utility.Math;
import de.staropensource.sosengine.base.utility.Miscellaneous;
-import de.staropensource.sosengine.unittests.UnitLogger;
import org.jetbrains.annotations.NotNull;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.DisplayName;
@@ -36,8 +34,6 @@ import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
import org.junit.jupiter.params.provider.ValueSource;
-import java.lang.ref.WeakReference;
-import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
@@ -50,12 +46,7 @@ import static org.junit.jupiter.api.Assertions.*;
*/
@SuppressWarnings("unused")
@DisplayName("Miscellaneous")
-public class MiscellaneousTest {
- /**
- * The {@link UnitLogger} for this instance.
- */
- private static final UnitLogger logger = new UnitLogger(MiscellaneousTest.class);
-
+public class MiscellaneousTest extends TestBase {
/**
* Used for testing the method {@code executeSafely}.
*/
@@ -65,7 +56,7 @@ public class MiscellaneousTest {
* Sets the {@link EngineConfiguration}#{@code instance} to {@code null} after each test.
*/
@AfterEach
- void clearConfiguration() throws InvalidMethodException, UnexpectedThrowableException, InvocationTargetException {
+ void clearConfiguration() throws Exception {
// For method testExecuteSafely1()
Reflect.reflectOn(EngineConfiguration.class).getMethod("clearInstance").invoke();
}
@@ -83,26 +74,11 @@ public class MiscellaneousTest {
"5819853, 10, 0005819853"
})
void testPadNumbers(int number, int length, String expected) {
- logger.testCall("testPadNumbers", number, length, expected);
+ getLogger().testCall("testPadNumbers", number, length, expected);
String result = Math.padNumbers(number, length);
assertEquals(expected, result, "Result \"" + result + "\" does not match expected output \"" + expected + "\"");
}
- /**
- * Tests the method {@code invokeGarbageCollector}.
- */
- @Test
- @DisplayName("invokeGarbageCollector")
- void testInvokeGarbageCollector(){
- logger.testCall("testInvokeGarbageCollector");
- Object object = new Object();
- WeakReference