diff --git a/test/java/foundation/pEp/jniadapter/test/framework/TestSuite.java b/test/java/foundation/pEp/jniadapter/test/framework/TestSuite.java index 9ad4571..f5c6f08 100644 --- a/test/java/foundation/pEp/jniadapter/test/framework/TestSuite.java +++ b/test/java/foundation/pEp/jniadapter/test/framework/TestSuite.java @@ -2,6 +2,7 @@ package foundation.pEp.jniadapter.test.framework; import static foundation.pEp.jniadapter.test.framework.TestLogger.*; import static foundation.pEp.jniadapter.test.framework.TestUtils.TermColor; +import static foundation.pEp.jniadapter.test.framework.TestUtils.*; import java.util.ArrayList; @@ -11,20 +12,32 @@ import java.util.ArrayList; public class TestSuite { private static TestSuite defaultTestSuite = null; - private static int instanceCount = 0; private ArrayList tests = new ArrayList(); private boolean verboseMode = false; + private boolean verboseModeSetByEnv = false; private TermColor testColor = TermColor.CYAN; + private String EVNVARNAME_VERBOSE = "TFVERBOSE"; public TestSuite() { setDefault(); - instanceCount++; + init(); } public TestSuite(boolean makeDefault) { if (makeDefault) { setDefault(); } + init(); + } + + private void init() { + try { + setVerbose(getEnvVerbose()); + verboseModeSetByEnv = true; + } catch(RuntimeException e) { + // Env var not set + verboseModeSetByEnv = false; + } } public void setDefault() { @@ -46,8 +59,11 @@ public class TestSuite { return verboseMode; } + // Will only set if not already set in env public void setVerbose(boolean v) { - verboseMode = v; + if(!verboseModeSetByEnv) { + verboseMode = v; + } } public TermColor getTestColor() { @@ -63,8 +79,6 @@ public class TestSuite { } public void run() { - setVerbose(Boolean.valueOf(System.getenv("TFVERBOSE"))); - for (TestUnit t : tests) { t.setVerboseMode(verboseMode); t.setTestColor(testColor); @@ -73,6 +87,11 @@ public class TestSuite { printStats(); } + private boolean getEnvVerbose() throws RuntimeException { + boolean ret = Boolean.parseBoolean(getEnvVar(EVNVARNAME_VERBOSE)); + return ret; + } + private void printStats() { int totalCount = tests.size(); int skippedCount = 0; diff --git a/test/java/foundation/pEp/jniadapter/test/framework/TestUtils.java b/test/java/foundation/pEp/jniadapter/test/framework/TestUtils.java index ae86f7d..7d4cb65 100644 --- a/test/java/foundation/pEp/jniadapter/test/framework/TestUtils.java +++ b/test/java/foundation/pEp/jniadapter/test/framework/TestUtils.java @@ -14,9 +14,13 @@ import java.util.List; import java.util.function.Predicate; import java.util.stream.Collectors; -import static foundation.pEp.jniadapter.test.framework.TestLogger.log; +//import static foundation.pEp.jniadapter.test.framework.TestLogger.log; public class TestUtils { + + /* + System + */ private static boolean stdoutHasBeenDisabled = false; private static PrintStream origSTDOUT; @@ -60,6 +64,25 @@ public class TestUtils { } } + // Throws if var not defined in env + public static String getEnvVar(String name) throws RuntimeException { + String ret = null; + if (envVarExists(name)) { + ret = System.getenv(name); + } else { + throw new RuntimeException("ENV var does not exits"); + } + return ret; + } + + public static boolean envVarExists(String var) { + boolean ret = false; + if(System.getenv(var) != null) { + ret = true; + } + return ret; + } + /* @@ -261,7 +284,7 @@ public class TestUtils { public static boolean deleteRecursively(File dir) { deleteContentsRecursively(dir); - log("deleting: " + dir.getAbsolutePath()); +// log("deleting: " + dir.getAbsolutePath()); return dir.delete(); } diff --git a/test/java/foundation/pEp/jniadapter/test/utils/transport/fsmqmanager/test/Makefile.conf b/test/java/foundation/pEp/jniadapter/test/utils/transport/fsmqmanager/test/Makefile.conf index b16a2aa..8f118dd 100644 --- a/test/java/foundation/pEp/jniadapter/test/utils/transport/fsmqmanager/test/Makefile.conf +++ b/test/java/foundation/pEp/jniadapter/test/utils/transport/fsmqmanager/test/Makefile.conf @@ -11,6 +11,18 @@ JAVA_CLASSES_FSMSGQUEUE= \ ../../UnknownIdentityException.class \ ../../../fsmsgqueue/FsMsgQueue.class +JAVA_CLASSES_FRAMEWORK= \ + ../../../../../framework/TestSuite.class \ + ../../../../../framework/TestUnit.class \ + ../../../../../framework/TestContextInterface.class \ + ../../../../../framework/AbstractTestContext.class \ + ../../../../../framework/TestLogger.class \ + ../../../../../framework/TestUtils.class \ + ../../../../../framework/TestState.class \ + ../../../../../framework/TestResult.class + JAVA_CLASSES_TESTSCOMMON= \ ../utils/FsMQManagerTestUtils.class \ ../ctx/FsMQManagerBaseTestContext.class + +JAVA_CLASSES_TESTSCOMMON += $(JAVA_CLASSES_FRAMEWORK) \ No newline at end of file