From 1c6758009e82c47b5b341d418be2be401ef31482 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 6 Sep 2019 22:20:46 +0300 Subject: Add builtins support --- tests/builtin/cat.testscript | 82 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 tests/builtin/cat.testscript (limited to 'tests/builtin/cat.testscript') diff --git a/tests/builtin/cat.testscript b/tests/builtin/cat.testscript new file mode 100644 index 0000000..336bb03 --- /dev/null +++ b/tests/builtin/cat.testscript @@ -0,0 +1,82 @@ +# file : tests/builtin/cat.testscript +# copyright : Copyright (c) 2014-2019 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +test.arguments = "cat" + +: unknown-option +: +$* -u 2>"cat: unknown option '-u'" == 1 + +: in +: +$* <>EOF + foo + bar + EOF + +: dash +: +$* - <>EOF + foo + bar + EOF + +: file +: +{ + $* <=out; + foo + bar + EOF + + cat out >>EOO + foo + bar + EOO +} + +: in-repeat +: +$* - - <>EOF + foo + bar + EOF + +: non-existent +: +$* in 2>>/~%EOE% != 0 + %cat: unable to print '.+/in': .+% + EOE + +: empty-path +: +: Cat an empty path. +: +$* '' 2>"cat: invalid path ''" == 1 + +: big +: +: Cat a big file (about 100K) to test that the builtin is asynchronous. +: +{ + 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"; + $* <"$s" | $* >"$s" +} + +: cwd +: +: When cross-testing we cannot guarantee that host absolute paths are +: recognized by the target process. +: +if ($test.target == $build.host) +{ + test.options += -d $~/a; + mkdir a; + echo 'foo' >=a/b; + + $* b >'foo' +} -- cgit v1.1