swc/ecmascript/minifier/scripts/run.sh

33 lines
1.0 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
#
# This script exists to prevent regression.
#
# This script invoked tests two time.
# For first, it runs tests in no-regression mode.
# In the mode, only tests listed in tests/golden.txt will be tested.
#
# For second invokation, arguments are passed to cargo test so the user can
# filter tests.
#
set -eux
export RUST_LOG=debug,swc_ecma_minifier=trace
# Run unit tests.
cargo test --all-features --lib
# Run golden tests to prevent regression.
if [ -z "$@" ]; then
./scripts/sort.sh
SWC_RUN=0 GOLDEN_ONLY=1 cargo test -q --test compress --all-features fixture_tests__terser__compress__
SWC_RUN=0 GOLDEN_ONLY=1 UPDATE=1 cargo test -q --test compress --all-features fixture_tests__compress
fi
# To prevent regression, we run base test before real tests.
UPDATE=1 ./scripts/base.sh base_fixture
./scripts/base.sh base_exec
SKIP_GOLDEN=1 cargo test --test compress --all-features ${1:-fixture_tests__terser__compress__}
SKIP_GOLDEN=1 UPDATE=1 cargo test --test compress --all-features ${1:-fixture_tests__compress__}