test.sh: use cargo --target for platforms other than linux, win or mac (#9650)
* test.sh: use cargo --target for platforms other than linux, win or mac * drying test.sh script * run tests only when not cross-compiling * quote variable value
This commit is contained in:
parent
6496405f30
commit
f3b806b471
@ -53,6 +53,8 @@ cache:
|
||||
|
||||
test-linux-rust-stable: &test
|
||||
stage: test
|
||||
variables:
|
||||
RUN_TESTS: "true"
|
||||
script:
|
||||
- scripts/gitlab/test.sh stable
|
||||
tags:
|
||||
@ -60,6 +62,8 @@ test-linux-rust-stable: &test
|
||||
|
||||
test-linux-rust-beta:
|
||||
stage: test
|
||||
variables:
|
||||
RUN_TESTS: "true"
|
||||
script:
|
||||
- scripts/gitlab/test.sh beta
|
||||
tags:
|
||||
@ -68,6 +72,8 @@ test-linux-rust-beta:
|
||||
|
||||
test-linux-rust-nightly:
|
||||
stage: test
|
||||
variables:
|
||||
RUN_TESTS: "true"
|
||||
script:
|
||||
- scripts/gitlab/test.sh nightly
|
||||
tags:
|
||||
@ -80,6 +86,7 @@ test-darwin-rust-stable:
|
||||
CARGO_TARGET: x86_64-apple-darwin
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
RUN_TESTS: "true"
|
||||
script:
|
||||
- scripts/gitlab/test.sh stable
|
||||
tags:
|
||||
@ -107,6 +114,7 @@ test-windows-rust-stable:
|
||||
# No cargo caching, since fetch-locking on Windows gets stuck
|
||||
variables:
|
||||
CARGO_TARGET: x86_64-pc-windows-msvc
|
||||
RUN_TESTS: "true"
|
||||
script:
|
||||
- sh scripts/gitlab/test.sh stable
|
||||
tags:
|
||||
|
81
test.sh
81
test.sh
@ -4,6 +4,7 @@
|
||||
FEATURES="json-tests,ci-skip-issue"
|
||||
OPTIONS="--release"
|
||||
VALIDATE=1
|
||||
THREADS=8
|
||||
|
||||
case $1 in
|
||||
--no-json)
|
||||
@ -29,31 +30,63 @@ esac
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$VALIDATE" -eq "1" ]; then
|
||||
# Validate --no-default-features build
|
||||
echo "________Validate build________"
|
||||
time cargo check --no-default-features
|
||||
time cargo check --manifest-path util/io/Cargo.toml --no-default-features
|
||||
time cargo check --manifest-path util/io/Cargo.toml --features "mio"
|
||||
|
||||
# Validate chainspecs
|
||||
echo "________Validate chainspecs________"
|
||||
time ./scripts/validate_chainspecs.sh
|
||||
validate () {
|
||||
if [ "$VALIDATE" -eq "1" ]
|
||||
then
|
||||
echo "________Validate build________"
|
||||
time cargo check $@ --no-default-features
|
||||
time cargo check $@ --manifest-path util/io/Cargo.toml --no-default-features
|
||||
time cargo check $@ --manifest-path util/io/Cargo.toml --features "mio"
|
||||
|
||||
# Validate chainspecs
|
||||
echo "________Validate chainspecs________"
|
||||
time ./scripts/validate_chainspecs.sh
|
||||
else
|
||||
echo "# not validating due to \$VALIDATE!=1"
|
||||
fi
|
||||
}
|
||||
|
||||
cpp_test () {
|
||||
# Running the C++ example
|
||||
echo "________Running the C++ example________"
|
||||
cd parity-clib-examples/cpp && \
|
||||
mkdir -p build && \
|
||||
cd build && \
|
||||
cmake .. && \
|
||||
make -j $THREADS && \
|
||||
./parity-example && \
|
||||
cd .. && \
|
||||
rm -rf build && \
|
||||
cd ../..
|
||||
}
|
||||
|
||||
cargo_test () {
|
||||
echo "________Running Parity Full Test Suite________"
|
||||
git submodule update --init --recursive
|
||||
time cargo test $OPTIONS --features "$FEATURES" --all $@ -- --test-threads $THREADS
|
||||
}
|
||||
|
||||
|
||||
if [ "$CARGO_TARGET" ]
|
||||
then
|
||||
validate --target $CARGO_TARGET
|
||||
else
|
||||
validate
|
||||
fi
|
||||
|
||||
# Running the C++ example
|
||||
echo "________Running the C++ example________"
|
||||
cd parity-clib-examples/cpp && \
|
||||
mkdir -p build && \
|
||||
cd build && \
|
||||
cmake .. && \
|
||||
make -j 8 && \
|
||||
./parity-example && \
|
||||
cd .. && \
|
||||
rm -rf build && \
|
||||
cd ../..
|
||||
test "${RUN_TESTS}" = "true" && cpp_test
|
||||
|
||||
if [ "$CARGO_TARGET" ]
|
||||
then
|
||||
|
||||
if [ "${RUN_TESTS}" = "true" ]
|
||||
then
|
||||
cargo_test --target $CARGO_TARGET $@
|
||||
else
|
||||
cargo_test --no-run --target $CARGO_TARGET $@
|
||||
fi
|
||||
else
|
||||
cargo_test $@
|
||||
fi
|
||||
|
||||
# Running tests
|
||||
echo "________Running Parity Full Test Suite________"
|
||||
git submodule update --init --recursive
|
||||
time cargo test $OPTIONS --features "$FEATURES" --all $1 -- --test-threads 8
|
||||
|
Loading…
Reference in New Issue
Block a user