summary refs log tree commit diff
path: root/bin/cash/tests/expansion/cmdsubst7.0
diff options
context:
space:
mode:
Diffstat (limited to 'bin/cash/tests/expansion/cmdsubst7.0')
-rw-r--r--bin/cash/tests/expansion/cmdsubst7.031
1 files changed, 31 insertions, 0 deletions
diff --git a/bin/cash/tests/expansion/cmdsubst7.0 b/bin/cash/tests/expansion/cmdsubst7.0
new file mode 100644
index 00000000..ede904aa
--- /dev/null
+++ b/bin/cash/tests/expansion/cmdsubst7.0
@@ -0,0 +1,31 @@
+# $FreeBSD: releng/12.0/bin/sh/tests/expansion/cmdsubst7.0 216778 2010-12-28 21:27:08Z jilles $
+
+failures=''
+ok=''
+
+testcase() {
+	code="$1"
+
+	unset v
+	eval ": \$($code)"
+
+	if [ "${v:+bad}" = "" ]; then
+		ok=x$ok
+	else
+		failures=x$failures
+		echo "Failure for $code"
+	fi
+}
+
+testcase ': ${v=0}'
+testcase ': ${v:=0}'
+testcase ': $((v=1))'
+testcase ': $((v+=1))'
+w='v=1'
+testcase ': $(($w))'
+testcase ': $((${$+v=1}))'
+testcase ': $((v${$+=1}))'
+testcase ': $((v $(echo =) 1))'
+testcase ': $(($(echo $w)))'
+
+test "x$failures" = x