From: Matt Corallo Date: Mon, 24 Jul 2023 22:03:15 +0000 (+0000) Subject: Run all tests first before testing more esoteric flags in CI X-Git-Tag: v0.0.117-alpha1~76^2 X-Git-Url: http://git.bitcoin.ninja/?a=commitdiff_plain;h=aa3c78658ebec12da422b907542b0b4e26233477;p=rust-lightning Run all tests first before testing more esoteric flags in CI This should at least marginally more aggressively target things which are more likely to have changed in CI, making `ci-tests.sh` more useful as a "default" script for developers to run locally. --- diff --git a/ci/ci-tests.sh b/ci/ci-tests.sh index 7a16b7492..5b46b2da0 100755 --- a/ci/ci-tests.sh +++ b/ci/ci-tests.sh @@ -40,13 +40,42 @@ echo -e "\n\nBuilding and testing all workspace crates..." cargo build --verbose --color always cargo test --verbose --color always -echo -e "\n\nBuilding with all Log-Limiting features" -pushd lightning -grep '^max_level_' Cargo.toml | awk '{ print $1 }'| while read -r FEATURE; do - cargo build --verbose --color always --features "$FEATURE" -done +echo -e "\n\nBuilding and testing Block Sync Clients with features" +pushd lightning-block-sync +cargo build --verbose --color always --features rest-client +cargo test --verbose --color always --features rest-client +cargo build --verbose --color always --features rpc-client +cargo test --verbose --color always --features rpc-client +cargo build --verbose --color always --features rpc-client,rest-client +cargo test --verbose --color always --features rpc-client,rest-client +cargo build --verbose --color always --features rpc-client,rest-client,tokio +cargo test --verbose --color always --features rpc-client,rest-client,tokio popd +if [[ $RUSTC_MINOR_VERSION -gt 67 && "$HOST_PLATFORM" != *windows* ]]; then + echo -e "\n\nBuilding and testing Transaction Sync Clients with features" + pushd lightning-transaction-sync + cargo build --verbose --color always --features esplora-blocking + cargo test --verbose --color always --features esplora-blocking + cargo build --verbose --color always --features esplora-async + cargo test --verbose --color always --features esplora-async + cargo build --verbose --color always --features esplora-async-https + cargo test --verbose --color always --features esplora-async-https + popd +fi + +echo -e "\n\nTest futures builds" +pushd lightning-background-processor +cargo test --verbose --color always --features futures +popd + +if [ "$RUSTC_MINOR_VERSION" -gt 55 ]; then + echo -e "\n\nTest Custom Message Macros" + pushd lightning-custom-message + cargo test --verbose --color always + popd +fi + if [ "$RUSTC_MINOR_VERSION" -gt 51 ]; then # Current `object` MSRV, subject to change echo -e "\n\nTest backtrace-debug builds" pushd lightning @@ -54,6 +83,13 @@ if [ "$RUSTC_MINOR_VERSION" -gt 51 ]; then # Current `object` MSRV, subject to c popd fi +echo -e "\n\nBuilding with all Log-Limiting features" +pushd lightning +grep '^max_level_' Cargo.toml | awk '{ print $1 }'| while read -r FEATURE; do + cargo build --verbose --color always --features "$FEATURE" +done +popd + echo -e "\n\nTesting no-std flags in various combinations" for DIR in lightning lightning-invoice lightning-rapid-gossip-sync; do pushd $DIR @@ -97,42 +133,6 @@ if [ -f "$(which arm-none-eabi-gcc)" ]; then popd fi -echo -e "\n\nBuilding and testing Block Sync Clients with features" -pushd lightning-block-sync -cargo build --verbose --color always --features rest-client -cargo test --verbose --color always --features rest-client -cargo build --verbose --color always --features rpc-client -cargo test --verbose --color always --features rpc-client -cargo build --verbose --color always --features rpc-client,rest-client -cargo test --verbose --color always --features rpc-client,rest-client -cargo build --verbose --color always --features rpc-client,rest-client,tokio -cargo test --verbose --color always --features rpc-client,rest-client,tokio -popd - -if [[ $RUSTC_MINOR_VERSION -gt 67 && "$HOST_PLATFORM" != *windows* ]]; then - echo -e "\n\nBuilding and testing Transaction Sync Clients with features" - pushd lightning-transaction-sync - cargo build --verbose --color always --features esplora-blocking - cargo test --verbose --color always --features esplora-blocking - cargo build --verbose --color always --features esplora-async - cargo test --verbose --color always --features esplora-async - cargo build --verbose --color always --features esplora-async-https - cargo test --verbose --color always --features esplora-async-https - popd -fi - -echo -e "\n\nTest futures builds" -pushd lightning-background-processor -cargo test --verbose --color always --features futures -popd - -if [ "$RUSTC_MINOR_VERSION" -gt 55 ]; then - echo -e "\n\nTest Custom Message Macros" - pushd lightning-custom-message - cargo test --verbose --color always - popd -fi - echo -e "\n\nTest Taproot builds" pushd lightning RUSTFLAGS="$RUSTFLAGS --cfg=taproot" cargo test --verbose --color always -p lightning