mirror of
https://github.com/italicsjenga/agb.git
synced 2024-12-24 08:41:34 +11:00
23 lines
700 B
Bash
23 lines
700 B
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
set -e # Fail if any command fails
|
||
|
|
||
|
CARGO_PROJECT_FILES=( agb-*/Cargo.toml agb/Cargo.toml examples/*/Cargo.toml book/games/*/Cargo.toml )
|
||
|
|
||
|
for CARGO_PROJECT_FILE in "${CARGO_PROJECT_FILES[@]}"; do
|
||
|
PROJECT_DIR=$(dirname "$CARGO_PROJECT_FILE")
|
||
|
|
||
|
echo "Checking project $PROJECT_DIR"
|
||
|
(cd "$PROJECT_DIR" && cargo build)
|
||
|
|
||
|
if echo "$PROJECT_DIR" | grep -qE '^agb'; then
|
||
|
echo "Running clippy on $PROJECT_DIR"
|
||
|
(cd "$PROJECT_DIR" && cargo clippy)
|
||
|
|
||
|
echo "Testing $PROJECT_DIR in debug mode"
|
||
|
(cd "$PROJECT_DIR" && cargo test)
|
||
|
|
||
|
echo "Testing $PROJECT_DIR and release mode"
|
||
|
(cd "$PROJECT_DIR" && cargo test --release)
|
||
|
fi
|
||
|
done
|