diff options
-rwxr-xr-x | scripts/run_docker.sh | 50 | ||||
-rwxr-xr-x | test/run_test_suite.py | 30 |
2 files changed, 36 insertions, 44 deletions
diff --git a/scripts/run_docker.sh b/scripts/run_docker.sh index 6f2b20d3..680e3f2a 100755 --- a/scripts/run_docker.sh +++ b/scripts/run_docker.sh @@ -5,61 +5,61 @@ set -x # default configuration sudo rm -rf build -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 meson setup build -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 meson setup build +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build test # arm32_dbg sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-arm32 meson setup build --cross-file=/usr/share/meson/cross/arm-linux-gnueabihf.ini -Dbuildtype=debug -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -v $PWD:/workdir lv2plugin/debian-arm32 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm32 meson setup build --cross-file=/usr/share/meson/cross/arm-linux-gnueabihf.ini -Dbuildtype=debug -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm32 ninja -C build test # arm32_rel sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-arm32 meson setup build --cross-file=/usr/share/meson/cross/arm-linux-gnueabihf.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -v $PWD:/workdir lv2plugin/debian-arm32 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm32 meson setup build --cross-file=/usr/share/meson/cross/arm-linux-gnueabihf.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm32 ninja -C build test # arm64_dbg sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-arm64 meson setup build --cross-file=/usr/share/meson/cross/aarch64-linux-gnu.ini -Dbuildtype=debug -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -v $PWD:/workdir lv2plugin/debian-arm64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm64 meson setup build --cross-file=/usr/share/meson/cross/aarch64-linux-gnu.ini -Dbuildtype=debug -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm64 ninja -C build test # arm64_rel sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-arm64 meson setup build --cross-file=/usr/share/meson/cross/aarch64-linux-gnu.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -v $PWD:/workdir lv2plugin/debian-arm64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm64 meson setup build --cross-file=/usr/share/meson/cross/aarch64-linux-gnu.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-arm64 ninja -C build test # x64_dbg sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 meson setup build -Dbuildtype=debug -Ddocs=enabled -Dstrict=true -Dwerror=true -Db_coverage=true -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build test -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build coverage-html +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 meson setup build -Dbuildtype=debug -Ddocs=enabled -Dstrict=true -Dwerror=true -Db_coverage=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build coverage-html # x64_rel sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 meson setup build -Dbuildtype=release -Ddocs=enabled -Dstrict=true -Dwerror=true -docker run -t -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 meson setup build -Dbuildtype=release -Ddocs=enabled -Dstrict=true -Dwerror=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64 ninja -C build test # x64_sanitize sudo rm -r build -docker run -t -v $PWD:/workdir -e CC="clang" -e CXX="clang++" -e CFLAGS="-fno-sanitize-recover=all -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" -e CXXFLAGS="-fno-sanitize-recover=all -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" -e LDFLAGS="-fno-sanitize-recover=all -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" lv2plugin/debian-x64-clang meson setup build -Db_lundef=false -Dbuildtype=plain -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -v $PWD:/workdir lv2plugin/debian-x64-clang ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir -e CC="clang" -e CXX="clang++" -e CFLAGS="-fno-sanitize-recover=all -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" -e CXXFLAGS="-fno-sanitize-recover=all -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" -e LDFLAGS="-fno-sanitize-recover=all -fsanitize=float-divide-by-zero -fsanitize=implicit-conversion -fsanitize=local-bounds -fsanitize=nullability" lv2plugin/debian-x64-clang meson setup build -Db_lundef=false -Dbuildtype=plain -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-x64-clang ninja -C build test # mingw32_dbg sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-mingw32 meson setup build --cross-file=/usr/share/meson/cross/i686-w64-mingw32.ini -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\i686-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" -v $PWD:/workdir lv2plugin/debian-mingw32 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw32 meson setup build --cross-file=/usr/share/meson/cross/i686-w64-mingw32.ini -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\i686-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw32 ninja -C build test # mingw32_rel sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-mingw32 meson setup build --cross-file=/usr/share/meson/cross/i686-w64-mingw32.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\i686-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" -v $PWD:/workdir lv2plugin/debian-mingw32 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw32 meson setup build --cross-file=/usr/share/meson/cross/i686-w64-mingw32.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\i686-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw32 ninja -C build test # mingw64_dbg sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-mingw64 meson setup build --cross-file=/usr/share/meson/cross/x86_64-w64-mingw32.ini -Dbuildtype=debug -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\x86_64-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" -v $PWD:/workdir lv2plugin/debian-mingw64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw64 meson setup build --cross-file=/usr/share/meson/cross/x86_64-w64-mingw32.ini -Dbuildtype=debug -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\x86_64-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw64 ninja -C build test # mingw64_rel sudo rm -r build -docker run -t -v $PWD:/workdir lv2plugin/debian-mingw64 meson setup build --cross-file=/usr/share/meson/cross/x86_64-w64-mingw32.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true -docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\x86_64-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" -v $PWD:/workdir lv2plugin/debian-mingw64 ninja -C build test +docker run -t --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw64 meson setup build --cross-file=/usr/share/meson/cross/x86_64-w64-mingw32.ini -Dbuildtype=release -Ddocs=disabled -Dstrict=true -Dwerror=true +docker run -t -e MESON_TESTTHREADS=1 -e WINEPATH="Z:\\usr\\lib\\gcc\\x86_64-w64-mingw32\\8.3-win32;Z:\\workdir\\build\\subprojects\\exess" --tmpfs /tmp -v $PWD:/workdir lv2plugin/debian-mingw64 ninja -C build test diff --git a/test/run_test_suite.py b/test/run_test_suite.py index 81d36bc1..13bb3c7d 100755 --- a/test/run_test_suite.py +++ b/test/run_test_suite.py @@ -211,8 +211,6 @@ def test_suite( command_prefix + ["-I", base_uri], manifest_path ) - os.makedirs(out_test_dir, exist_ok=True) - asserter = "" if os.getenv("USER") == "drobilla": asserter = "http://drobilla.net/drobilla#me" @@ -396,11 +394,6 @@ def main(): parser.add_argument("--syntax", default=None, help="input syntax") parser.add_argument("--osyntax", default=None, help="output syntax") parser.add_argument("--wrapper", default="", help="executable wrapper") - - parser.add_argument( - "-o", "--out-dir", default=None, help="output directory" - ) - parser.add_argument("manifest", help="test suite manifest.ttl file") parser.add_argument("base_uri", help="base URI for tests") @@ -409,22 +402,21 @@ def main(): ) args = parser.parse_args(sys.argv[1:]) - if args.out_dir is None: - suite_name = os.path.basename(os.path.dirname(args.manifest)) - args.out_dir = os.path.join('test', suite_name) + command_prefix = ( shlex.split(args.wrapper) + [args.serdi] + args.serdi_option ) - return test_suite( - args.manifest, - args.base_uri, - args.report, - args.syntax, - args.osyntax, - command_prefix, - args.out_dir, - ) + with tempfile.TemporaryDirectory() as test_out_dir: + return test_suite( + args.manifest, + args.base_uri, + args.report, + args.syntax, + args.osyntax, + command_prefix, + test_out_dir, + ) if __name__ == "__main__": |