about summary refs log tree commit diff
path: root/t
diff options
context:
space:
mode:
Diffstat (limited to 't')
-rw-r--r--t/errors.t23
-rw-r--r--t/simple.t99
2 files changed, 122 insertions, 0 deletions
diff --git a/t/errors.t b/t/errors.t
new file mode 100644
index 0000000..b61b47d
--- /dev/null
+++ b/t/errors.t
@@ -0,0 +1,23 @@
+#!/bin/sh
+export "PATH=.:$PATH"
+
+printf '1..3\n'
+printf '# errors\n'
+
+tap3 'no arguments' <<'EOF'
+atxec
+>>>2 /sage/
+>>>= 1
+EOF
+
+tap3 'not found' <<'EOF'
+atxec /doesnotexist
+>>>2 /o such file/
+>>>= 111
+EOF
+
+tap3 'too many arguments' <<'EOF'
+atxec $(yes | sed 99999q)
+>>>2 /too many/
+>>>= 111
+EOF
diff --git a/t/simple.t b/t/simple.t
new file mode 100644
index 0000000..4606da2
--- /dev/null
+++ b/t/simple.t
@@ -0,0 +1,99 @@
+#!/bin/sh
+export "PATH=.:$PATH"
+
+printf '1..12\n'
+printf '# simple tests\n'
+
+tap3 'no expansion' <<'EOF'
+atxec echo 1 2 3
+>>>
+1 2 3
+EOF
+
+tap3 'env expansion' <<'EOF'
+TWO=2 atxec echo 1 '@$TWO' 3
+>>>
+1 2 3
+EOF
+
+tap3 'file expansion' <<'EOF'
+echo 2 >two
+atxec echo 1 @two 3
+>>>
+1 2 3
+EOF
+
+tap3 'file expansion - multiple words' <<'EOF'
+echo "duo deux" >two
+atxec echo 1 @two 3
+>>>
+1 duo deux 3
+EOF
+
+tap3 'file expansion - multiple inserts' <<'EOF'
+echo "duo deux" >two
+atxec echo 1 @two 3 @two
+>>>
+1 duo deux 3 duo deux
+EOF
+
+tap3 'file expansion - multiple words on multiple lines' <<'EOF'
+echo duo >two
+echo deux >>two
+atxec echo 1 @two 3
+>>>
+1 duo deux 3
+EOF
+
+tap3 'file expansion - multiple words on multiple lines, comments' <<'EOF'
+echo duo >two
+echo '# ignored' >>two
+echo deux >>two
+atxec echo 1 @two 3
+>>>
+1 duo deux 3
+EOF
+
+tap3 'file expansion - quoting' <<'EOF'
+echo "'two' 'three'" >two
+atxec echo 1 @two 3
+>>>
+1 two three 3
+EOF
+
+tap3 'file expansion - quoting spaces' <<'EOF'
+echo "'two three'" >two
+atxec printf '%s\n' 1 @two 3
+>>>
+1
+two three
+3
+EOF
+
+tap3 'file expansion - empty file' <<'EOF'
+echo >two
+atxec printf '%s\n' 1 @two 3
+>>>
+1
+3
+EOF
+
+tap3 'file expansion - empty args' <<'EOF'
+echo "''" >two
+atxec printf '%s\n' 1 @two 3
+>>>
+1
+
+3
+EOF
+
+tap3 'file expansion - quoting quote' <<'EOF'
+echo "'quo''te' 'two''quotes''here' 'next''''eachother'" >two
+atxec printf '%s\n' 1 @two 3
+>>>
+1
+quo'te
+two'quotes'here
+next''eachother
+3
+EOF