Build a test jar which we can run to test the built jar is runnable
[ldk-java] / .github / workflows / build.yml
index 66c49dea14076b8e1e5cf5097b493ab2e1b810f1..24eb674cbcf5d15431b172c1f5e7ab711be04173 100644 (file)
@@ -53,10 +53,8 @@ jobs:
         run: |
           rm liblightningjni.so
           ln -s liblightningjni_debug_Linux-amd64.so liblightningjni.so
-          export LD_LIBRARY_PATH=.
-          export LD_PRELOAD=/usr/lib/llvm-11/lib/clang/11.0.1/lib/linux/libclang_rt.asan-x86_64.so
           export ASAN_OPTIONS=detect_leaks=0
-          mvn test
+          LD_PRELOAD=/usr/lib/llvm-11/lib/clang/11.0.1/lib/linux/libclang_rt.asan-x86_64.so LD_LIBRARY_PATH=. mvn test
           git checkout liblightningjni.so
       - name: Build Java/TS Release Bindings
         run: |
@@ -76,3 +74,11 @@ jobs:
       - name: Check latest headers and release lib are in git
         run: |
           git diff --exit-code
+      - name: Run Java Tests against built release jar
+        run: |
+          mvn -DskipTests=true package
+          mvn install:install-file -Dfile=target/ldk-java-1.0-SNAPSHOT.jar -DgroupId=org.ldk -DartifactId=ldk-java -Dversion=1.0-SNAPSHOT -Dpackaging=jar
+          cd javatester
+          mvn package
+          java -ea -jar target/ldk-java-tests-1.0-SNAPSHOT-jar-with-dependencies.jar
+          cd ..