# file : tests/builtin/cat.testscript # 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' }