diff --git a/.github/workflows/on_PR_meson.yaml b/.github/workflows/on_PR_meson.yaml index 382e106a8b..442a1c30ac 100644 --- a/.github/workflows/on_PR_meson.yaml +++ b/.github/workflows/on_PR_meson.yaml @@ -24,8 +24,8 @@ jobs: - name: Compile and Test run: | meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 - meson compile -C "${{github.workspace}}/build" - meson test -C "${{github.workspace}}/build" + meson compile -C "${{github.workspace}}/build" --verbose + meson test -C "${{github.workspace}}/build" --verbose Ubuntu-clang: runs-on: ubuntu-22.04 name: Linux-Clang${{matrix.cxx}}-deps=${{matrix.deps}} @@ -69,7 +69,7 @@ jobs: - name: Compile and Test run: | - meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++latest -Db_sanitize=address + meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++latest -Db_sanitize=address -Ddefault_library=static meson compile -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose VisualStudio-clang-cl: @@ -92,7 +92,7 @@ jobs: CC: clang-cl CXX: clang-cl run: | - meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++latest -Db_sanitize=address + meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++latest -Db_sanitize=address -Ddefault_library=static meson compile -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose MSYS2: @@ -123,7 +123,7 @@ jobs: - name: Compile and Test run: | - meson setup "${{github.workspace}}/build" -Dauto_features=${{matrix.deps}} -Dwarning_level=3 + meson setup "${{github.workspace}}/build" -Dauto_features=${{matrix.deps}} -Dwarning_level=3 -Ddefault_library=static meson compile -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose MSYS: @@ -172,7 +172,7 @@ jobs: - uses: vmactions/freebsd-vm@v1 with: prepare: | - pkg install -y cmake curl ninja meson gettext pkgconf googletest expat inih brotli libfmt + pkg install -y cmake curl ninja meson gettext python pkgconf googletest expat inih brotli libfmt run: | meson setup "${{github.workspace}}/build" -Dwarning_level=3 meson compile -C "${{github.workspace}}/build" --verbose diff --git a/meson.build b/meson.build index cd74de8cc0..11fbaad6c4 100644 --- a/meson.build +++ b/meson.build @@ -173,6 +173,7 @@ samples = { 'iptceasy': [], 'iptcprint': [], 'iptctest': [], + 'jpegparsetest': [], 'key-test': [], 'largeiptc-test': [], 'mmap-test': [], @@ -206,5 +207,7 @@ foreach g : gopt executable(g, 'samples/@0@.cpp'.format(g), 'app/getopt.cpp', dependencies: exiv2_dep, include_directories: [exiv2inc, ginc]) endforeach +bindir = 'EXIV2_BINDIR=@0@'.format(meson.current_build_dir()) +subdir('tests') subdir('unitTests') subdir('po') diff --git a/tests/meson.build b/tests/meson.build new file mode 100644 index 0000000000..00e43bc89c --- /dev/null +++ b/tests/meson.build @@ -0,0 +1,63 @@ +if not expat_dep.found() + subdir_done() +endif + +test( + 'bashTests', + find_program('runner.py'), + env: bindir, + args: ['--verbose', 'bash_tests'], + timeout: 600, + is_parallel: false, + workdir: meson.current_source_dir(), +) + +test( + 'bugfixTests', + find_program('runner.py'), + env: bindir, + args: ['--verbose', 'bugfixes'], + timeout: 600, + is_parallel: false, + workdir: meson.current_source_dir(), +) + +test( + 'lensTests', + find_program('runner.py'), + env: bindir, + args: ['--verbose', 'lens_tests'], + timeout: 600, + is_parallel: false, + workdir: meson.current_source_dir(), +) + +test( + 'regressionTests', + find_program('runner.py'), + env: bindir, + args: ['--verbose', 'regression_tests'], + timeout: 600, + is_parallel: false, + workdir: meson.current_source_dir(), +) + +test( + 'tiffTests', + find_program('runner.py'), + env: bindir, + args: ['--verbose', 'tiff_test'], + timeout: 600, + is_parallel: false, + workdir: meson.current_source_dir(), +) + +test( + 'versionTests', + find_program('runner.py'), + env: bindir, + args: ['--verbose', 'bash_tests/version_test.py'], + timeout: 600, + is_parallel: false, + workdir: meson.current_source_dir(), +)