From 5007870b52aa549971824959a55ad3bb886f09e0 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 3 Sep 2018 16:37:32 +0200 Subject: Rename .test/test{} to .testscript/testscript{} --- tests/test/script/builtin/rm.testscript | 119 ++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 tests/test/script/builtin/rm.testscript (limited to 'tests/test/script/builtin/rm.testscript') diff --git a/tests/test/script/builtin/rm.testscript b/tests/test/script/builtin/rm.testscript new file mode 100644 index 0000000..3dd2674 --- /dev/null +++ b/tests/test/script/builtin/rm.testscript @@ -0,0 +1,119 @@ +# file : tests/test/script/builtin/rm.testscript +# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +.include ../common.testscript + +: no-args +: +{ + : fail + : + : Removing with no arguments fails. + : + $c <'rm 2>"rm: missing file" == 1' && $b + + : force + : + : Removing with no arguments succeeds with -f option. + : + $c <'rm -f' && $b +} + +: file +: +{ + : exists + : + : Removing existing file succeeds. + : + $c <>/~%EOE% == 1 + %rm: unable to remove '.+/file/not-exists/fail/test/1/a': .+% + EOE + EOI + + : force + : + : Removing non-existing file succeeds with -f option. + : + $c <'rm -f a' && $b + } +} + +: dir +: +{ + : default + : + : Removing directory fails by default. + : + $c <"rm: '$normalize([path] $~/a)' is a directory" == 1 + EOI + + : recursive + : + : Removing directory succeeds with -r option. + : + $c <"rm: '([string] $~)' contains test working directory '$~'" == 1 + EOI +} + +: path +: +{ + : empty + : + : Removing an empty path fails. + : + $c <"rm: invalid path ''" == 1 + EOI + + : outside-scope + : + : Need to use a path that unlikely exists (not to remove something useful). + : + { + : fail + : + : Removing path outside the testscript working directory fails. + : + $c <>/~%EOE% == 1 + %rm: '.+/path/outside-scope/fail/a/b/c' is out of working directory '.+/path/outside-scope/fail/test'% + EOE + EOI + + : force + : + : Removing path outside the testscript working directory succeeds with -f + : option. + : + $c <'rm -f ../../a/b/c' && $b + } +} -- cgit v1.1