summaryrefslogtreecommitdiff
path: root/tests/file/testscript
diff options
context:
space:
mode:
Diffstat (limited to 'tests/file/testscript')
-rw-r--r--tests/file/testscript241
1 files changed, 241 insertions, 0 deletions
diff --git a/tests/file/testscript b/tests/file/testscript
new file mode 100644
index 0000000..3e7c18c
--- /dev/null
+++ b/tests/file/testscript
@@ -0,0 +1,241 @@
+# file : tests/file/testscript
+# copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC
+# license : MIT; see accompanying LICENSE file
+
+# End-of-line marker. Place its expansion in here-documents after the trailing
+# spaces to prevent them from being stripped by editors and to improve
+# readability.
+#
+eol = ""
+
++cat <<EOI >>>empty.cli
+# Empty options file.
+#
+
+EOI
++cat <<EOI >>>base.cli
+-a 21
+-b 21
+EOI
+
+# @@ Give tests some meaningfull descriptions.
+#
+
+: 000
+:
+cat <<EOI >>>test.cli;
+-a 11
+-b 11
+ -a 12
+
+ -b 12
+a
+EOI
+$* -a 1 --file ../empty.cli -b 1 --file ../base.cli --file test.cli b >>EOO
+-a
+1
+-b
+1
+-a
+21
+-b
+21
+-a
+11
+-b
+11
+-a
+12
+-b
+12
+a
+b
+EOO
+
+: 001
+:
+cat <<EOI >>>test.cli;
+# Empty options file.
+#
+
+EOI
+$* -a 1 -- --file test.cli b >>EOO
+-a
+1
+--
+--file
+test.cli
+b
+EOO
+
+: 002
+:
+cat <<EOI >>>test.cli;
+-a 11
+-b 11
+--
+--file ../base.cli
+-a 12
+-b 12
+a
+EOI
+$* -a 1 --file test.cli --file ../empty.cli b >>EOO
+-a
+1
+-a
+11
+-b
+11
+--
+--file
+../base.cli
+-a
+12
+-b
+12
+a
+--file
+../empty.cli
+b
+EOO
+
+: 003
+:
+$* -a 1 --file ../base.cli --file test.cli b >>EOO 2>>EOE
+-a
+1
+-a
+21
+-b
+21
+EOO
+unable to open file 'test.cli' or read failure
+EOE
+
+: 004
+:
+cat <<EOI >>>test.cli;
+-a a"b"c
+-a "abc"
+-a "a"b"
+-a ""
+-a " abc "
+-a " "
+-a """
+-a "'"
+
+-a a'b'c
+-a 'abc'
+-a 'a'b'
+-a ''
+-a ' abc '
+-a ' '
+-a '''
+-a '"'
+EOI
+$* --file test.cli >>EOO
+-a
+a"b"c
+-a
+abc
+-a
+a"b
+-a
+
+-a
+ abc $eol
+-a
+ $eol
+-a
+"
+-a
+'
+-a
+a'b'c
+-a
+abc
+-a
+a'b
+-a
+
+-a
+ abc $eol
+-a
+ $eol
+-a
+'
+-a
+"
+EOO
+
+: 005
+:
+cat <<EOI >>>test.cli;
+-a "
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument '"'
+EOE
+
+: 006
+:
+cat <<EOI >>>test.cli;
+-a "abc
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument '"abc'
+EOE
+
+: 007
+:
+cat <<EOI >>>test.cli;
+-a abc"
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument 'abc"'
+EOE
+
+: 008
+:
+cat <<EOI >>>test.cli;
+-a '
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument '''
+EOE
+
+: 009
+:
+cat <<EOI >>>test.cli;
+-a 'abc
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument ''abc'
+EOE
+
+: 010
+:
+cat <<EOI >>>test.cli;
+-a abc'
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument 'abc''
+EOE
+
+: 011
+:
+cat <<EOI >>>test.cli;
+-a "abc'
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument '"abc''
+EOE
+
+: 012
+:
+cat <<EOI >>>test.cli;
+-a 'abc"
+EOI
+$* --file test.cli 2>>EOE
+unmatched quote in argument ''abc"'
+EOE