2 @pwd@>echo Tests for cmd's builtin commands@space@
3 Tests for cmd's builtin commands
5 @pwd@>echo ------------ Testing 'echo' [ON] --------------@space@
6 ------------ Testing 'echo' [ON] --------------
11 @pwd@>echo 'singlequotedword'@space@
14 @pwd@>echo "doublequotedword"@space@
18 @pwd@>echo "/?"@space@
30 @pwd@>echo .word@space@
42 @pwd@>echo :word@space@
45 @pwd@>echo word@space@@space@
48 @pwd@>echo word@space@@space@@space@
50 ------------ Testing 'echo' [OFF] --------------
66 ------------ Testing redirection operators --------------
82 @todo_wine@foob@space@
83 @todo_wine@fooc@space@
87 @todo_wine@------------ Testing ^ escape character --------------
88 @todo_wine@hello, world
89 @todo_wine@hello, world
90 @todo_wine@hell^o, world
91 @todo_wine@hell^o, world
94 @todo_wine@foo | echo bar
95 @todo_wine@foo & echo bar
98 @todo_wine@0@or_broken@1
102 @todo_wine@FOO=bar | baz
104 @todo_wine@FOO=bar ^| baz
107 ------------ Testing 'set' --------------
117 @todo_wine@FOOBAR= bar
118 @todo_wine@FOOBAR = baz2
127 set "FOO=bar" should not include the quotes in the variable value
129 ------------ Testing variable expansion --------------
130 ~dp0 should be directory containing batch file
133 CD value @pwd@@or_broken@CD value@space@
149 ------------ Testing variable delayed expansion --------------
150 ...default mode (load-time expansion)
155 ...runtime (delayed) expansion mode
157 @todo_wine@foo@or_broken@!FOO!
159 @todo_wine@bar@or_broken@foo
166 @todo_wine@foo@or_broken@!FOO!
169 ------------ Testing conditional execution --------------
170 @todo_wine@...unconditional &
174 @todo_wine@foobar deleted
175 @todo_wine@...on success conditional &&
176 @todo_wine@foo3 not created
179 @todo_wine@...on failure conditional ||
181 @todo_wine@foo6@space@
182 ------------ Testing type ------------
184 @pwd@>type foobaz@space@
187 @pwd@>echo ***@space@
191 ------------ Testing NUL ------------
196 @todo_wine@foo created
197 ------------ Testing if/else --------------
198 if/else should work with blocks
201 @todo_wine@if seems not to detect /c as parameter
202 Testing case sensitivity with and without /i option
203 if seems to default to case sensitivity
206 -----------Testing for -----------
254 @todo_wine@ErrorLevel 0
255 @todo_wine@ErrorLevel 0
257 ......individual operations
273 0@or_broken@1073741824
274 0@or_broken@-1073741824
295 ......precedence and grouping
298 @todo_wine@18@or_broken@10
299 @todo_wine@2@or_broken@0
300 @todo_wine@2@or_broken@0
303 @todo_wine@3@or_broken@4
304 ......octal and hexadecimal
305 @todo_wine@3@or_broken@4
311 @todo_wine@3@or_broken@foo not defined
312 @todo_wine@3@or_broken@0
313 @todo_wine@3@or_broken@0
314 @todo_wine@3@or_broken@0
315 @todo_wine@9@or_broken@0
317 @todo_wine@4@or_broken@0
318 @todo_wine@-7@or_broken@0
319 @todo_wine@-1@or_broken@0
320 @todo_wine@5@or_broken@0
321 @todo_wine@4@or_broken@0
322 @todo_wine@1@or_broken@0
324 @todo_wine@5@or_broken@0
326 -----------Testing del /a-----------
327 not-r.test not found after delete, good
328 r.test found before delete, good
329 r.test not found after delete, good
330 ------------ Testing del /q --------------
331 del /q * succeeded on file1
332 del /q * succeeded on file2.dat
333 ------------ Testing del /s --------------
334 ----------- Testing mkdir -----------
350 mkdir ? gives errorlevel 1
351 mkdir ?\foo gives errorlevel 1
352 mkdir foo\? gives errorlevel 1
354 mkdir foo\bar\? gives errorlevel 1
360 mkdir foo\* errorlevel 1
362 ----------- Testing rmdir -----------
371 non-empty dir not removed
373 non-empty dir not removed
374 recursive rmdir succeeded
375 recursive rmdir succeeded
380 ------------ Testing CALL --------------
385 @todo_wine@foo ""@space@
386 @todo_wine@"" bar@space@
397 @todo_wine@foo created
398 @todo_wine@Should expand foobaz
404 ------------ Testing setlocal/endlocal ------------
405 ...enable/disable extensions
406 @todo_wine@ErrLev:@space@
409 @todo_wine@ErrLev:@space@@or_broken@ErrLev: 0
411 ...setlocal with corresponding endlocal
416 ...setlocal with no corresponding endlocal
420 -----------Testing Errorlevel-----------
423 errorlevel just right, good
424 abc0def@or_broken@abc1def
425 errorlevel zero, good@or_broken@errorlevel nonzero, bad
428 -----------Testing GOTO-----------
429 goto with no leading space worked
430 goto with a leading space worked
431 goto with a leading tab worked
432 goto with a following space worked
433 -----------Done, jumping to EOF-----------