diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0bd47d3..da6ec9e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -26,13 +26,10 @@ flatpak: - | xvfb-run -a -s "-screen 0 1024x768x24" \ flatpak-builder --run \ - --env=APP_ID="org.gnome.PodcastsDevel" \ - --env=LOCALEDIR="./podcasts-gtk/po" \ - --env=VERSION="0.0.0" \ - --env=CARGO_HOME="target/cargo-home" \ - --env=CARGO_TARGET_DIR="target_test/" \ + --env=CARGO_HOME="${CI_PROJECT_DIR}/target/cargo-home" \ + --env=CARGO_TARGET_DIR="${CI_PROJECT_DIR}/target/" \ app ${MANIFEST_PATH} \ - cargo test --color=always -j 1 -- --test-threads=1 + ninja -C _build test # Create a flatpak bundle - flatpak-builder --finish-only app ${MANIFEST_PATH} diff --git a/meson.build b/meson.build index 0e2c2f8..945c895 100644 --- a/meson.build +++ b/meson.build @@ -65,9 +65,17 @@ datadir = get_option('datadir') subdir('podcasts-gtk/resources') cargo_script = find_program('scripts/cargo.sh') +test_script = find_program('scripts/test.sh') subdir('podcasts-gtk/src') run_target('release', command: ['scripts/release.sh', meson.project_name() + '-' + podcasts_version ]) + +test( + 'cargo-test', + test_script, + workdir: meson.source_root(), + timeout: 3000 +) diff --git a/scripts/test.sh b/scripts/test.sh index 9a7208e..367bed3 100755 --- a/scripts/test.sh +++ b/scripts/test.sh @@ -4,34 +4,7 @@ set -o errexit set -o nounset set -o pipefail -export MANIFEST_PATH="org.gnome.PodcastsDevel.json" -export FLATPAK_MODULE="gnome-podcasts" -export CONFIGURE_ARGS="-Dprofile=development" -# export DBUS_ID="org.gnome.PodcastsDevel" -# export BUNDLE="org.gnome.Podcasts.Devel.flatpak" -# export RUNTIME_REPO="https://sdk.gnome.org/gnome-nightly.flatpakrepo" +export CARGO_HOME="target/cargo-home" +export CARGO_TARGET_DIR="target_test/" -flatpak-builder --stop-at=${FLATPAK_MODULE} --force-clean app ${MANIFEST_PATH} - -# Build the flatpak repo -flatpak-builder --run app ${MANIFEST_PATH} meson --prefix=/app ${CONFIGURE_ARGS} build -flatpak-builder --run \ - --env=CARGO_HOME="target/cargo-home" \ - --env=CARGO_TARGET_DIR="target_test/" \ - --env=RUSTFLAGS="" \ - app ${MANIFEST_PATH} \ - ninja -C build - -# Run the tests -xvfb-run -a -s "-screen 0 1024x768x24" \ - flatpak-builder --run \ - --env=CARGO_HOME="target/cargo-home" \ - --env=CARGO_TARGET_DIR="target_test/" \ - --env=RUSTFLAGS="" \ - app ${MANIFEST_PATH} \ - cargo test -j 1 -- --test-threads=1 --nocapture - -# Create a flatpak bundle -# flatpak-builder --finish-only app ${MANIFEST_PATH} -# flatpak build-export repo app -# flatpak build-bundle repo ${BUNDLE} --runtime-repo=${RUNTIME_REPO} ${DBUS_ID} +cargo test -j 1 -- --test-threads=1 --nocapture