diff options
Diffstat (limited to 'tests/test/script/builtin/cat.testscript')
-rw-r--r-- | tests/test/script/builtin/cat.testscript | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/tests/test/script/builtin/cat.testscript b/tests/test/script/builtin/cat.testscript new file mode 100644 index 0000000..b72edb4 --- /dev/null +++ b/tests/test/script/builtin/cat.testscript @@ -0,0 +1,84 @@ +# file : tests/test/script/builtin/cat.testscript +# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +.include ../common.testscript + +: in +: +$c <<EOI && $b +cat <<EOF >>EOO +foo +bar +EOF +foo +bar +EOO +EOI + +: dash +: +$c <<EOI && $b +cat - <<EOF >>EOO +foo +bar +EOF +foo +bar +EOO +EOI + +: file +: +$c <<EOI && $b +cat <<EOF >=out; +foo +bar +EOF +cat out >>EOO +foo +bar +EOO +EOI + +: in-repeat +: +$c <<EOI && $b +cat - <<EOF >>EOO +foo +bar +EOF +foo +bar +EOO +EOI + +: non-existent +: +$c <<EOI && $b +cat in 2>>/~%EOE% != 0 +%cat: unable to print '.+/test/cat/non-existent/test/1/in': .+% +EOE +EOI + +: empty-path +: +: Cat an empty path. +: +$c <<EOI && $b +cat '' 2>"cat: invalid path ''" == 1 +EOI + +: big +: +: Cat a big file (about 100K) to test that the builtin is asynchronous. +: +{ + $c <<EOI && $b + s="--------------------------------" + s="$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s" + s="$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s" + s="$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s" + cat <"$s" | cat >"$s" + EOI +} |