swc/ecmascript/minifier/scripts/run.sh
강동윤 0e30deba1a
feat(es/minifier): Implement more rules (#2058)
swc_ecma_minifier:
 - Enable some sequential merging if `collapse_vars` is set.
 - Enable sequential merging for top level items.
 - `if_return`: Don't inject `void` if it's not exact function body. (#2072)
 - `sequences`: Add some condition for aborting. (#2078)

swc_ecma_utils:
 - Add `collect_decls`.
 - Add `collect_decls_with_ctxt`.

swc_ecma_transforms_optimization:
 - `inline_globals`: Don't replace if a binding exists. (#1294)
2021-08-15 13:09:21 +00:00

31 lines
846 B
Bash
Executable File

#!/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 -eu
export RUST_LOG=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__
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__}