From: W. Felix Handte Date: Fri, 26 Feb 2021 18:01:20 +0000 (-0500) Subject: Cover These Edge Cases in Tests X-Git-Tag: v1.4.9^2~2^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9b7f9d26d5cefe2f9208950e15866b69525e9e46;p=thirdparty%2Fzstd.git Cover These Edge Cases in Tests --- diff --git a/tests/playTests.sh b/tests/playTests.sh index ec1692c21..8550badeb 100755 --- a/tests/playTests.sh +++ b/tests/playTests.sh @@ -486,23 +486,29 @@ rm -rf tmp* if [ "$isWindows" = false ] ; then println "\n===> compress multiple files into an output directory and mirror input folder, --output-dir-mirror" println "test --output-dir-mirror" > tmp1 - mkdir -p tmpInputTestDir/we/must/go/deeper - println cool > tmpInputTestDir/we/must/go/deeper/tmp2 + mkdir -p tmpInputTestDir/we/.../..must/go/deeper.. + println cool > tmpInputTestDir/we/.../..must/go/deeper../tmp2 zstd tmp1 -r tmpInputTestDir --output-dir-mirror tmpOutDir test -f tmpOutDir/tmp1.zst - test -f tmpOutDir/tmpInputTestDir/we/must/go/deeper/tmp2.zst + test -f tmpOutDir/tmpInputTestDir/we/.../..must/go/deeper../tmp2.zst println "test: compress input dir will be ignored if it has '..'" - zstd -r tmpInputTestDir/we/must/../must --output-dir-mirror non-exist && die "input cannot contain '..'" + zstd -r tmpInputTestDir/we/.../..must/../..mustgo/deeper.. --output-dir-mirror non-exist && die "input cannot contain '..'" + zstd -r tmpInputTestDir/we/.../..must/deeper../.. --output-dir-mirror non-exist && die "input cannot contain '..'" + zstd -r ../tests/tmpInputTestDir/we/.../..must/deeper.. --output-dir-mirror non-exist && die "input cannot contain '..'" test ! -d non-exist + println "test: compress input dir should succeed with benign uses of '..'" + zstd -r tmpInputTestDir/we/.../..must/go/deeper.. --output-dir-mirror tmpout + test -d tmpout + println "test : decompress multiple files into an output directory, --output-dir-mirror" zstd tmpOutDir -r -d --output-dir-mirror tmpOutDirDecomp test -f tmpOutDirDecomp/tmpOutDir/tmp1 - test -f tmpOutDirDecomp/tmpOutDir/tmpInputTestDir/we/must/go/deeper/tmp2 + test -f tmpOutDirDecomp/tmpOutDir/tmpInputTestDir/we/.../..must/go/deeper../tmp2 println "test: decompress input dir will be ignored if it has '..'" - zstd -r tmpOutDir/tmpInputTestDir/we/must/../must --output-dir-mirror non-exist && die "input cannot contain '..'" + zstd -r tmpOutDir/tmpInputTestDir/we/.../..must/../..must --output-dir-mirror non-exist && die "input cannot contain '..'" test ! -d non-exist rm -rf tmp*