init version.
[bush.git] / tests / 2.dollor / dollar-at-star / dollar-at-star2.sub
blob64ab1eb753c84ea25f47ec65876627892ef110cd
1 #   This program is free software: you can redistribute it and/or modify
2 #   it under the terms of the GNU General Public License as published by
3 #   the Free Software Foundation, either version 3 of the License, or
4 #   (at your option) any later version.
6 #   This program is distributed in the hope that it will be useful,
7 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
8 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9 #   GNU General Public License for more details.
11 #   You should have received a copy of the GNU General Public License
12 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
14 OIFS="$IFS"
15 foo='   ,foo'
16 set -- "$foo"
18 if [[ $foo = ,* ]]; then echo bad 1; else echo ok 1; fi
19 if [[ $@ = ,* ]]; then echo bad 2; else echo ok 2; fi
20 if [[ $* = ,* ]]; then echo bad 3; else echo ok 3; fi
21 if [[ ${@} = ,* ]]; then echo bad 4; else echo ok 4; fi
22 if [[ ${*} = ,* ]]; then echo bad 5; else echo ok 5; fi
23 if [[ $1 = ,* ]]; then echo bad 6; else echo ok 6; fi
25 set -- '   ,foo'
26 if [[ $foo = ,* ]]; then echo bad 7; else echo ok 7; fi
27 if [[ $@ = ,* ]]; then echo bad 8; else echo ok 8; fi
28 if [[ $* = ,* ]]; then echo bad 9; else echo ok 9; fi
29 if [[ ${@} = ,* ]]; then echo bad 10; else echo ok 10; fi
30 if [[ ${*} = ,* ]]; then echo bad 11; else echo ok 11; fi
31 if [[ $1 = ,* ]]; then echo bad 12; else echo ok 12; fi
33 IFS=
34 if [[ $@ = ,* ]]; then echo bad 13; else echo ok 13; fi
35 if [[ $* = ,* ]]; then echo bad 14; else echo ok 14; fi
36 IFS="$OIFS"
38 foo='   ,foo'
39 set -- '   ' ',foo'
41 if [[ $@ = ,* ]]; then echo bad at 1; else echo ok at 1; fi
42 if [[ ${@} = ,* ]]; then echo bad at 2; else echo ok at 2; fi
44 if [[ $* = ,* ]]; then echo bad star 1; else echo ok star 1; fi
45 if [[ ${*} = ,* ]]; then echo bad star 2; else echo ok star 2; fi
47 foo='   ,foo'
48 set -- "$foo"
50 # expand_string_for_rhs
52 foo2=$@
53 echo "$foo2"
55 foo2=$*
56 echo "$foo2"
58 foo2="$@"
59 echo "$foo2"
61 foo2="$*"
62 echo "$foo2"
64 # expand_word_unsplit
65 case $@ in
66 $foo2)  echo ok at 1 ;;
67 *)      echo bad at 1 ;;
68 esac
70 # also uses expand_word_leave_quoted
71 case $@ in
72 $@)     echo ok at 2;;
73 *)      echo bad at 2;;
74 esac
76 case $@ in
77 $foo)   echo ok at 3 ;;
78 *)      echo bad at 3;;
79 esac
81 # expand_word_unsplit
82 case $* in
83 $foo2)  echo ok star 1 ;;
84 *)      echo bad star 1 ;;
85 esac
87 # also uses expand_word_leave_quoted
88 case $* in
89 $*)     echo ok star 2;;
90 *)      echo bad star 2;;
91 esac
93 case $* in
94 $foo)   echo ok star 3 ;;
95 *)      echo bad star 3;;
96 esac
98 case $@ in
99 $*)     echo ok at-star 1;;
100 *)      echo bad at-star 1;;
101 esac
103 case $* in
104 $@)     echo ok at-star 2;;
105 *)      echo bad at-star 2;;
106 esac
108 foo='a b c'
109 set -- $foo
111 # expand_string_for_rhs
112 IFS='|'
113 foo2=$@
114 echo "$foo2"
116 foo2=$*
117 echo "$foo2"
119 foo2="$@"
120 echo "$foo2"
122 foo2="$*"
123 echo "$foo2"
125 foo="a b c"
126 set -- $foo
128 if [[ $@ = $foo ]]; then echo ok at 1; else echo bad at 1; fi
129 if [[ $foo = $@ ]]; then echo ok at 2; else echo bad at 2; fi
131 case $@ in
132 $@)     echo ok at 3 ;;
133 *)      echo bad at 3 ;;
134 esac
136 case $@ in
137 $foo)   echo ok at 4;;
138 *)      echo bad at 4;;
139 esac
141 case $foo in
142 $@)     echo ok at 5;;
143 *)      echo bad at 5;;
144 esac
145 IFS="$OIFS"
147 foo="a b c"
148 set -- $foo
150 IFS=:
151 if [[ $@ = $foo ]]; then echo ok at 1; else echo bad at 1; fi
152 if [[ $foo = $@ ]]; then echo ok at 2; else echo bad at 2; fi
154 case $@ in
155 $@)     echo ok at 3 ;;
156 *)      echo bad at 3 ;;
157 esac
159 case $@ in
160 $foo)   echo ok at 4;;
161 *)      echo bad at 4;;
162 esac
164 case $foo in
165 $@)     echo ok at 5;;
166 *)      echo bad at 5;;
167 esac
168 IFS="$OIFS"
170 foo="a b c"
171 set -- $foo
173 IFS='|'
174 foo2=$@
176 case $@ in
177 $@)     echo ok at 1 ;;
178 *)      echo bad at 1 ;;
179 esac
181 case $foo2 in
182 $foo)   echo ok at 2;;
183 *)      echo bad at 2;;
184 esac
186 case $foo in
187 $foo2)  echo ok at 3;;
188 *)      echo bad at 3;;
189 esac
191 case $foo in
192 $foo)   echo ok at 4;;
193 *)      echo bad at 4;;
194 esac
196 case $foo2 in
197 $foo2)  echo ok at 5;;
198 *)      echo bad at 5;;
199 esac
201 case $foo2 in
202 $@)     echo ok at 6;;
203 *)      echo bad at 6;;
204 esac
206 case $@ in
207 $foo2)  echo ok at 7;;
208 *)      echo bad at 7;;
209 esac
211 case $foo in
212 $@)     echo ok at 8;;
213 *)      echo bad at 8;;
214 esac
216 case $@ in
217 $foo)   echo ok at 9;;
218 *)      echo bad at 9;;
219 esac
220 IFS="$OIFS"