First Commit
This commit is contained in:
115
externals/zstd/tests/test-variants.sh
vendored
Normal file
115
externals/zstd/tests/test-variants.sh
vendored
Normal file
@@ -0,0 +1,115 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
set -u
|
||||
set -x
|
||||
|
||||
|
||||
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
|
||||
PROG_DIR="$SCRIPT_DIR/../programs"
|
||||
|
||||
ZSTD="$PROG_DIR/zstd"
|
||||
ZSTD_COMPRESS="$PROG_DIR/zstd-compress"
|
||||
ZSTD_DECOMPRESS="$PROG_DIR/zstd-decompress"
|
||||
ZSTD_NOLEGACY="$PROG_DIR/zstd-nolegacy"
|
||||
ZSTD_DICTBUILDER="$PROG_DIR/zstd-dictBuilder"
|
||||
ZSTD_FRUGAL="$PROG_DIR/zstd-frugal"
|
||||
ZSTD_NOMT="$PROG_DIR/zstd-nomt"
|
||||
|
||||
println() {
|
||||
printf '%b\n' "${*}"
|
||||
}
|
||||
|
||||
die() {
|
||||
println "$@" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
symbol_present() {
|
||||
(nm $1 || echo "symbol_present $@ failed") | grep $2
|
||||
}
|
||||
|
||||
symbol_not_present() {
|
||||
symbol_present $@ && die "Binary '$1' mistakenly contains symbol '$2'" ||:
|
||||
}
|
||||
|
||||
compress_not_present() {
|
||||
symbol_not_present "$1" ZSTD_compress
|
||||
}
|
||||
|
||||
decompress_not_present() {
|
||||
symbol_not_present "$1" ZSTD_decompress
|
||||
}
|
||||
|
||||
dict_not_present() {
|
||||
symbol_not_present "$1" ZDICT_
|
||||
symbol_not_present "$1" COVER_
|
||||
}
|
||||
|
||||
cliextra_not_present() {
|
||||
symbol_not_present "$1" TRACE_
|
||||
symbol_not_present "$1" BMK_
|
||||
}
|
||||
|
||||
legacy_not_present() {
|
||||
symbol_not_present "$1" ZSTDv0
|
||||
}
|
||||
|
||||
test_help() {
|
||||
"$1" --help | grep -- "$2"
|
||||
}
|
||||
|
||||
test_no_help() {
|
||||
test_help $@ && die "'$1' supports '$2' when it shouldn't" ||:
|
||||
}
|
||||
|
||||
extras_not_present() {
|
||||
dict_not_present $@
|
||||
legacy_not_present $@
|
||||
cliextra_not_present $@
|
||||
test_no_help $@ "--train"
|
||||
test_no_help $@ "-b#"
|
||||
}
|
||||
|
||||
test_compress() {
|
||||
echo "hello" | "$1" | "$ZSTD" -t
|
||||
}
|
||||
|
||||
test_decompress() {
|
||||
echo "hello" | "$ZSTD" | "$1" -t
|
||||
}
|
||||
|
||||
test_zstd() {
|
||||
test_compress $@
|
||||
test_decompress $@
|
||||
}
|
||||
|
||||
extras_not_present "$ZSTD_FRUGAL"
|
||||
extras_not_present "$ZSTD_COMPRESS"
|
||||
extras_not_present "$ZSTD_DECOMPRESS"
|
||||
|
||||
compress_not_present "$ZSTD_DECOMPRESS"
|
||||
|
||||
decompress_not_present "$ZSTD_COMPRESS"
|
||||
decompress_not_present "$ZSTD_DICTBUILDER"
|
||||
|
||||
cliextra_not_present "$ZSTD_DICTBUILDER"
|
||||
|
||||
legacy_not_present "$ZSTD_DICTBUILDER"
|
||||
legacy_not_present "$ZSTD_NOLEGACY"
|
||||
|
||||
symbol_not_present "$ZSTD" ZSTDv01
|
||||
symbol_not_present "$ZSTD" ZSTDv02
|
||||
symbol_not_present "$ZSTD" ZSTDv03
|
||||
symbol_not_present "$ZSTD" ZSTDv04
|
||||
|
||||
test_compress "$ZSTD_COMPRESS"
|
||||
test_decompress "$ZSTD_DECOMPRESS"
|
||||
|
||||
test_zstd "$ZSTD_FRUGAL"
|
||||
test_zstd "$ZSTD_NOLEGACY"
|
||||
|
||||
test_help "$ZSTD" '-b#'
|
||||
test_help "$ZSTD" --train
|
||||
test_help "$ZSTD_DICTBUILDER" --train
|
||||
|
||||
println "Success!"
|
||||
Reference in New Issue
Block a user