diff --git a/src/test/java/testjoltjni/TestUtils.java b/src/test/java/testjoltjni/TestUtils.java index 150ad9d5..1383489d 100644 --- a/src/test/java/testjoltjni/TestUtils.java +++ b/src/test/java/testjoltjni/TestUtils.java @@ -298,6 +298,42 @@ public static boolean loadNativeLibrary( return success; } + /** + * Load some flavor of native library, preferably a Release build. + *

+ * The search order is: + *

    + *
  1. ReleaseSp
  2. + *
  3. ReleaseDp
  4. + *
  5. DebugSp
  6. + *
  7. DebugDp
  8. + *
+ */ + public static void loadNativeLibraryRelease() { + File directory = new File("build/libs/joltjni/shared"); + + boolean success = loadNativeLibrary(directory, "Release", "Sp"); + if (success) { + Assert.assertFalse(Jolt.isDoublePrecision()); + } else { + success = loadNativeLibrary(directory, "Release", "Dp"); + if (success) { + Assert.assertTrue(Jolt.isDoublePrecision()); + } else { + success = loadNativeLibrary(directory, "Debug", "Sp"); + if (success) { + Assert.assertFalse(Jolt.isDoublePrecision()); + } else { + success = loadNativeLibrary(directory, "Debug", "Dp"); + if (success) { + Assert.assertTrue(Jolt.isDoublePrecision()); + } + } + } + } + Assert.assertTrue(success); + } + /** * Allocate and initialize a {@code PhysicsSystem} in the customary * configuration. diff --git a/src/test/java/testjoltjni/app/performancetest/PerformanceTest.java b/src/test/java/testjoltjni/app/performancetest/PerformanceTest.java index c806d256..07e36daf 100644 --- a/src/test/java/testjoltjni/app/performancetest/PerformanceTest.java +++ b/src/test/java/testjoltjni/app/performancetest/PerformanceTest.java @@ -56,7 +56,7 @@ private static void Trace(String format, Object... args) // Program entry point public static void main(String[] argv) throws IOException { - TestUtils.loadNativeLibrary(); + TestUtils.loadNativeLibraryRelease(); // Install callbacks Jolt.installDefaultTraceCallback();