hush: fix a bug in argv restoration after sourcing a file
[oweals/busybox.git] / shell / hush_test / hush-misc / case1.tests
index 15f60f3a68ba06f403bc25e054855ccd8da56213..d72b57f53a25a9f417d310568c488c33deb5771d 100755 (executable)
@@ -1,5 +1,13 @@
 case w in a) echo SKIP;; w) echo OK_1;; w) echo WRONG;; esac
 
+case w in
+ a) echo SKIP;;
+ w)echo OK_1 ;;
+ w)
+ echo WRONG
+ ;;
+esac
+
 t=w
 case $t in a) echo SKIP;; w) echo OK_21;; w) echo WRONG;; esac;
 case "$t" in a) echo SKIP;; w) echo OK_22;; w) echo WRONG;; esac;
@@ -15,3 +23,18 @@ case `echo w w` in a) echo SKIP;; w) echo WRONG;; w*) echo OK_44;; esac;
 
 case w in `echo w`) echo OK_51;; `echo WRONG >&2`w) echo WRONG;; esac;
 case w in `echo OK_52 >&2`) echo SKIP;; `echo`w) echo OK_53;; esac;
+
+# parsing cases in subshells can easily get messy
+ case m in  m) echo OK_sub1;; esac
+ case m in (m) echo OK_sub2;; esac
+(case m in  m) echo OK_sub3;; esac)
+(case m in (m) echo OK_sub4;; esac)
+(
+ case m in  m) echo OK_sub5;; esac
+)
+(
+ case m in (m) echo OK_sub6;; esac
+)
+(case esac in "esac") echo OK_esac1;; esac)
+
+echo Done