build: hook up tests with meson
Adds our cargo test to meson's testing system so that `ninja test` runs it in addition to our resource validation tests.
This commit is contained in:
parent
5b2edc73ec
commit
92e2006782
@ -26,13 +26,10 @@ flatpak:
|
|||||||
- |
|
- |
|
||||||
xvfb-run -a -s "-screen 0 1024x768x24" \
|
xvfb-run -a -s "-screen 0 1024x768x24" \
|
||||||
flatpak-builder --run \
|
flatpak-builder --run \
|
||||||
--env=APP_ID="org.gnome.PodcastsDevel" \
|
--env=CARGO_HOME="${CI_PROJECT_DIR}/target/cargo-home" \
|
||||||
--env=LOCALEDIR="./podcasts-gtk/po" \
|
--env=CARGO_TARGET_DIR="${CI_PROJECT_DIR}/target/" \
|
||||||
--env=VERSION="0.0.0" \
|
|
||||||
--env=CARGO_HOME="target/cargo-home" \
|
|
||||||
--env=CARGO_TARGET_DIR="target_test/" \
|
|
||||||
app ${MANIFEST_PATH} \
|
app ${MANIFEST_PATH} \
|
||||||
cargo test --color=always -j 1 -- --test-threads=1
|
ninja -C _build test
|
||||||
|
|
||||||
# Create a flatpak bundle
|
# Create a flatpak bundle
|
||||||
- flatpak-builder --finish-only app ${MANIFEST_PATH}
|
- flatpak-builder --finish-only app ${MANIFEST_PATH}
|
||||||
|
|||||||
@ -65,9 +65,17 @@ datadir = get_option('datadir')
|
|||||||
subdir('podcasts-gtk/resources')
|
subdir('podcasts-gtk/resources')
|
||||||
|
|
||||||
cargo_script = find_program('scripts/cargo.sh')
|
cargo_script = find_program('scripts/cargo.sh')
|
||||||
|
test_script = find_program('scripts/test.sh')
|
||||||
|
|
||||||
subdir('podcasts-gtk/src')
|
subdir('podcasts-gtk/src')
|
||||||
|
|
||||||
run_target('release', command: ['scripts/release.sh',
|
run_target('release', command: ['scripts/release.sh',
|
||||||
meson.project_name() + '-' + podcasts_version
|
meson.project_name() + '-' + podcasts_version
|
||||||
])
|
])
|
||||||
|
|
||||||
|
test(
|
||||||
|
'cargo-test',
|
||||||
|
test_script,
|
||||||
|
workdir: meson.source_root(),
|
||||||
|
timeout: 3000
|
||||||
|
)
|
||||||
|
|||||||
@ -4,34 +4,7 @@ set -o errexit
|
|||||||
set -o nounset
|
set -o nounset
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
|
|
||||||
export MANIFEST_PATH="org.gnome.PodcastsDevel.json"
|
export CARGO_HOME="target/cargo-home"
|
||||||
export FLATPAK_MODULE="gnome-podcasts"
|
export CARGO_TARGET_DIR="target_test/"
|
||||||
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"
|
|
||||||
|
|
||||||
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
|
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}
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user