Denys Vlasenko | a62bc80 | 2016-10-03 00:06:55 +0200 | [diff] [blame] | 1 | case w in a) echo SKIP;; w) echo OK_1;; w) echo WRONG;; esac |
| 2 | |
| 3 | case w in |
| 4 | a) echo SKIP;; |
| 5 | w)echo OK_1 ;; |
| 6 | w) |
| 7 | echo WRONG |
| 8 | ;; |
| 9 | esac |
| 10 | |
| 11 | t=w |
| 12 | case $t in a) echo SKIP;; w) echo OK_21;; w) echo WRONG;; esac; |
| 13 | case "$t" in a) echo SKIP;; w) echo OK_22;; w) echo WRONG;; esac; |
| 14 | case w in a) echo SKIP;; $t) echo OK_23;; "$t") echo WRONG;; esac; |
| 15 | |
| 16 | case '' in a) echo SKIP;; w) echo WRONG;; *) echo OK_31;; esac; |
| 17 | case '' in a) echo SKIP;; '') echo OK_32;; *) echo WRONG;; esac; |
| 18 | |
| 19 | case `echo w` in a) echo SKIP;; w) echo OK_41;; w) echo WRONG;; esac; |
| 20 | case "`echo w`" in a) echo SKIP;; w) echo OK_42;; w) echo WRONG;; esac; |
| 21 | case `echo w w` in a) echo SKIP;; w) echo WRONG;; 'w w') echo OK_43;; esac; |
| 22 | case `echo w w` in a) echo SKIP;; w) echo WRONG;; w*) echo OK_44;; esac; |
| 23 | |
| 24 | case w in `echo w`) echo OK_51;; `echo WRONG >&2`w) echo WRONG;; esac; |
| 25 | case w in `echo OK_52 >&2`) echo SKIP;; `echo`w) echo OK_53;; esac; |
| 26 | |
| 27 | # parsing cases in subshells can easily get messy |
| 28 | case m in m) echo OK_sub1;; esac |
| 29 | case m in (m) echo OK_sub2;; esac |
| 30 | (case m in m) echo OK_sub3;; esac) |
| 31 | (case m in (m) echo OK_sub4;; esac) |
| 32 | ( |
| 33 | case m in m) echo OK_sub5;; esac |
| 34 | ) |
| 35 | ( |
| 36 | case m in (m) echo OK_sub6;; esac |
| 37 | ) |
| 38 | (case esac in "esac") echo OK_esac1;; esac) |
| 39 | |
| 40 | echo Done |