aboutsummaryrefslogtreecommitdiff
path: root/shell/ash_test/ash-arith/arith-for.testsx
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-03-05 00:27:50 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-03-05 00:27:50 +0000
commit1c660b4bd2c303fcb829bc93143fc454693afab4 (patch)
tree5b2f2c8676d13bc132fdac4506049facd3475235 /shell/ash_test/ash-arith/arith-for.testsx
parent3af3e5b4b0d12dffbe7bd144092f8cb140ff74a4 (diff)
downloadbusybox-1c660b4bd2c303fcb829bc93143fc454693afab4.tar.gz
small ash testsuite, adapted from bash
(only a small part of it, actually)
Diffstat (limited to 'shell/ash_test/ash-arith/arith-for.testsx')
-rwxr-xr-xshell/ash_test/ash-arith/arith-for.testsx94
1 files changed, 94 insertions, 0 deletions
diff --git a/shell/ash_test/ash-arith/arith-for.testsx b/shell/ash_test/ash-arith/arith-for.testsx
new file mode 100755
index 000000000..585aa5133
--- /dev/null
+++ b/shell/ash_test/ash-arith/arith-for.testsx
@@ -0,0 +1,94 @@
+fx()
+{
+i=0
+for (( ; i < 3; i++ ))
+do
+ echo $i
+done
+
+for (( i=0; ; i++ ))
+do
+ if (( i >= 3 )); then
+ break;
+ fi
+ echo $i
+done
+
+for (( i=0; i<3; ))
+do
+ echo $i
+ (( i++ ))
+done
+
+i=0
+for (( ; ; ))
+do
+ if (( i > 2 )); then
+ break;
+ fi
+ echo $i;
+ (( i++ ))
+done
+
+i=0
+for ((;;))
+do
+ if (( i > 2 )); then
+ break;
+ fi
+ echo $i;
+ (( i++ ))
+done
+}
+
+for (( i=0; "i < 3" ; i++ ))
+do
+ echo $i
+done
+
+i=0
+for (( ; "i < 3"; i++ ))
+do
+ echo $i
+done
+
+for (( i=0; ; i++ ))
+do
+ if (( i >= 3 )); then
+ break;
+ fi
+ echo $i
+done
+
+for ((i = 0; ;i++ ))
+do
+ echo $i
+ if (( i < 3 )); then
+ (( i++ ))
+ continue;
+ fi
+ break
+done
+
+type fx
+fx
+
+# errors
+for (( i=0; "i < 3" ))
+do
+ echo $i
+done
+echo $?
+
+for (( i=0; i < 3; i++; 7 ))
+do
+ echo $i
+done
+echo $?
+
+# one-liners added in post-bash-2.04
+for ((i=0; i < 20; i++)) do : ; done
+echo $i
+
+for ((i=0; i < 20; i++)) { : ; }
+echo $i