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@
54 @pwd@
>echo
/word@space@
57 @pwd@
>echo
off now@space@
60 @pwd@
>echo word@space@@space@
63 @pwd@
>echo word@space@@space@@space@
66 @pwd@
>echo word@space@
69 @pwd@
>echo@tab@word@space@
72 @pwd@
>echo@tab@word@space@@tab@@space@
75 @pwd@
>echo@tab@word@tab@@space@@space@
78 @pwd@
>echo word@space@
81 @pwd@
>echo@space@@tab@word@space@
84 @pwd@
>echo@space@@space@@tab@word@space@
87 @pwd@
>echo@tab@@tab@word@space@
90 @pwd@
>echo @tab@
on @space@@space@
91 --- @ with chains and brackets
93 @todo_wine@@pwd@
>(echo the @ character chains until
&& ) && echo and can
hide brackets ||
() ||@space@
94 @todo_wine@the @ character chains until
95 @todo_wine@we leave the current depth
96 @todo_wine@and can
hide brackets
101 ------------ Testing
'echo' [OFF] ------------
130 ------------ Testing mixed echo modes
------------
138 @todo_wine@@pwd@
>if 1 == 1 echo foo@space@
141 @todo_wine@@pwd@
>if 1 == 1@space@
145 ------------ Testing parameterization
------------
153 'a[b]{c}(d)e', '', ''
159 ------------ Testing
rem ------------
161 @pwd@
>rem Hello@space@
163 @pwd@
>rem Hello@space@
165 @pwd@
>rem Hello || foo@space@
167 @pwd@
>rem echo lol@space@
169 @pwd@
>rem echo foo
& echo bar@space@
171 @pwd@
>rem @tab@ Hello@space@
173 @pwd@
>rem@tab@ Hello@space@
175 @pwd@
>rem@tab@echo foo
& echo bar@space@
176 ------------ Testing redirection operators
------------
177 --- stdout redirection
183 foo7@space@@or_broken@foo@tab@
184 foo9@space@@or_broken@foo@tab@
205 @todo_wine@foo7@space@@space@@or_broken@not supported@space@
206 @todo_wine@foo@or_broken@not supported
207 --- redirections within
IF statements
212 file does not exist
, ok
225 ------------ Testing circumflex escape character
------------
251 ------------ Testing chains
------------
386 b3
:[b2
:[b1
,b2
],b3
]@or_broken@b3
:[b2
:,b3
]
387 c4
:[c3
:[c2
:[c1
,c2
],c3
],c4
]@or_broken@c4
:[c3
:[c2
:,c3
],c4
]@or_broken@c4
:[c3
:,c4
]
389 e3
:[e2
:[e1
,e2
],e3
]@or_broken@e3
:[e2
:,e3
]
390 f4
:[f3
:[f2
:[f1
,f2
],f3
],f4
]@or_broken@f4
:[f3
:[f2
:,f3
],f4
]@or_broken@f4
:[f3
:,f4
]
403 --- chain
else (if true
)
431 --- chain
else (if false
)
444 ------------ Testing
'set' ------------
447 WINE_FOOBAR not defined
457 WINE_FOOBAR not defined
464 set "WINE_FOO=bar" should not include the quotes in the variable value
477 ------------ Testing
variable expansion
------------
478 ~p0 should be path containing batch file
481 ~dp0 should be directory containing batch file
484 CD value @pwd@@or_broken@CD value@space@
500 ------------ Testing
variable substrings
------------
508 ''@or_broken@
'qwerty'
510 ------------ Testing
variable substitution
------------
518 @drive@@path@C D@or_broken@
%~ff
519 @drive@@path@E@or_broken@
%~ff
522 @path@@or_broken@
%~pd
523 @path@@or_broken@
%~pd
529 @todo_wine@
'@drive@@shortpath@R S'@or_broken@
''
530 @todo_wine@
'@drive@@shortpath@T'@or_broken@
''
531 @todo_wine@
'@drive@@shortpath@ABCDEFGHIJK.LMNOP'@or_broken@
''
534 '--a------'@or_broken@
'--a--------'@or_broken@
'--a--c---'@or_broken@
'%~ai'
565 @todo_wine@
'@drive@@shortpath@R S'@or_broken@
''
566 @todo_wine@
'@drive@@shortpath@T'@or_broken@
''
567 @todo_wine@
'@drive@@shortpath@ABCDEFGHIJK.LMNOP'@or_broken@
''
576 ------------ Testing
variable delayed expansion
------------
577 --- default
mode (load-time expansion
)
582 --- runtime
(delayed
) expansion
mode
584 foo@or_broken@
!WINE_FOO
!
591 --- using
/V cmd flag
593 foo@or_broken@
!WINE_FOO
!
596 ------------ Testing conditional execution
------------
597 --- unconditional ampersand
602 --- on success conditional and
603 @todo_wine@foo3 not created
606 --- on failure conditional or
609 @todo_wine@
------------ Testing cd
------------
611 Current
dir: @drive@@path@foobar@or_broken@Current
dir:@space@
620 @drive@@path@foobar
\bar bak
621 @drive@@path@foobar
\bar bak
622 @drive@@path@foobar
\bar bak
623 @drive@@path@foobar
\bar bak
624 @drive@@path@foobar
\bar bak
627 ------------ Testing type
------------
629 @pwd@
>type foobaz@space@
632 @pwd@
>echo
---@space@
640 ------------ Testing NUL
------------
646 Passed
: file size check
on a.a
[7]@or_broken@Skipping file size check
on NT4
647 Passed
: file size check
on b.b
[8]@or_broken@Skipping file size check
on NT4
648 Passed
: file size check
on a.a
[7]@or_broken@Skipping file size check
on NT4
649 Passed
: file size check
on b.b
[8]@or_broken@Skipping file size check
on NT4
650 Passed
: file size check
on a.a
[7]@or_broken@Skipping file size check
on NT4
651 Passed
: file size check
on subdir
\a.a
[8]@or_broken@Skipping file size check
on NT4
652 ------------ Testing
if/else ------------
653 --- if/else should work with blocks
656 if seems not to detect
/c as parameter
657 else if seems to work
658 else if seems to work
659 else if seems to work
660 --- case sensitivity with and without
/i option
661 if seems to default to case sensitivity
664 --- string comparisons
677 --- comparison operators
679 LSS string can be used as operand
for LSS comparison
680 floats are handled as strings
681 numbers in quotes are handled as strings
682 negative numbers as well@or_broken@NT4
683 if /i seems to work
for LSS
694 b LSS B@or_broken@NT4
695 a LSS B@or_broken@NT4
714 b LEQ B@or_broken@NT4
716 a LEQ B@or_broken@NT4
771 ------------ Testing
if/exist
------------
773 exist explicit unknown file works
774 exist explicit in subdir works
775 exist simple wildcard works
777 negate exist wildcard works
778 exist wildcard bad subdir broken works
780 negative numbers handled
781 negative numbers handled
783 also in negative form
785 also in negative form
809 string
/hexa compare ok
810 string
/hexa compare ok
839 ------ for numbers and stringified numbers
840 strings and integers not equal
841 strings and integers not equal
844 '1' GEQ
1@or_broken@NT4
849 non NT4@or_broken@
1 GEQ
'1'
856 --- unconditional ampersand after
if one line
869 ------------ Testing
for ------------
920 --- wildcards in subdirs
932 Plain directory enumeration
933 Plain directory enumeration from provided root
935 File enumeration from provided root
937 Mixed enumeration from provided root
938 With duplicates enumeration
939 Strip missing wildcards
, keep unwildcarded names
941 --- Complex wildcards unix and windows slash
942 Windows slashes
, valid path
943 ASIS
: foobar
\baz
\bazbaz
944 WC
: foobar
\baz
\bazbaz
945 Windows slashes
, invalid path
946 ASIS
: foobar\jim
\bazbaz
947 Unix slashes
, valid path
948 ASIS
: foobar
/baz
/bazbaz
950 Unix slashes
, invalid path
951 ASIS
: foobar
/jim
/bazbaz
986 ------ individual operations
988 WINE_foo correctly
-1
991 WINE_foo correctly
10
994 WINE_foo correctly
-4
998 WINE_foo correctly
-2
1000 WINE_foo correctly
4
1001 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
1073741824 [0]
1002 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
-1073741824 [0]
1003 WINE_foo correctly
-4
1004 WINE_foo correctly
9
1005 WINE_foo correctly
2
1006 WINE_foo correctly
0
1007 WINE_foo correctly
-1
1008 WINE_foo correctly
-3
1009 WINE_foo correctly
0
1010 WINE_foo correctly
1
1011 WINE_foo correctly
1
1012 WINE_foo correctly
4
1013 WINE_foo correctly
1
1014 WINE_foo correctly
5
1015 WINE_foo correctly
5
1016 WINE_foo correctly
7
1017 WINE_foo correctly
5
1018 WINE_foo correctly
5
1019 WINE_foo correctly
5
1020 WINE_foo correctly
4
1021 WINE_foo correctly
6
1022 WINE_foo correctly
1
1023 WINE_foo correctly
4
1024 ------ precedence and grouping
1025 WINE_foo correctly
10
1026 WINE_foo correctly
18@or_broken@ERROR
: WINE_foo incorrectly
[18]
1027 WINE_foo correctly
2@or_broken@ERROR
: WINE_foo incorrectly
0 [2]
1028 WINE_foo correctly
2@or_broken@ERROR
: WINE_foo incorrectly
[2]
1029 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
4 [0]
1030 WINE_foo correctly
4@or_broken@ERROR
: WINE_foo incorrectly
[4]
1031 WINE_foo correctly
3@or_broken@ERROR
: WINE_foo incorrectly
[3]
1032 WINE_foo correctly
3@or_broken@ERROR
: WINE_foo incorrectly
[3]
1033 ------ octal and hexadecimal
1034 WINE_foo correctly
18
1035 WINE_foo correctly
18
1036 WINE_foo correctly
15
1037 WINE_foo correctly
3
1039 WINE_foo correctly
3@or_broken@ERROR
: WINE_foo incorrectly
0 [3]
1040 WINE_bar correctly
3@or_broken@ERROR
: WINE_bar incorrectly
[3]
1041 WINE_foo correctly
3@or_broken@ERROR
: WINE_foo incorrectly
0 [3]
1042 WINE_bar correctly
4@or_broken@ERROR
: WINE_bar incorrectly
[4]
1043 WINE_foo correctly
3@or_broken@ERROR
: WINE_foo incorrectly
0 [3]
1044 WINE_bar correctly
3@or_broken@ERROR
: WINE_bar incorrectly
[3]
1045 WINE_baz correctly
4@or_broken@ERROR
: WINE_baz incorrectly
[4]
1046 WINE_foo correctly
9@or_broken@ERROR
: WINE_foo incorrectly
3 [9]
1047 WINE_bar correctly
9@or_broken@ERROR
: WINE_bar incorrectly
3 [9]
1048 WINE_foo correctly
0
1049 WINE_foo correctly
4
1050 WINE_bar correctly
4
1051 WINE_foo correctly
-7@or_broken@ERROR
: WINE_foo incorrectly
4 [-7]
1052 WINE_bar correctly
-7@or_broken@ERROR
: WINE_bar incorrectly
4 [-7]
1053 WINE_foo correctly
-1@or_broken@ERROR
: WINE_foo incorrectly
-7 [-1]
1054 WINE_bar correctly
-1@or_broken@ERROR
: WINE_bar incorrectly
-7 [-1]
1055 WINE_foo correctly
5@or_broken@ERROR
: WINE_foo incorrectly
0 [5]
1056 WINE_bar correctly
1@or_broken@ERROR
: WINE_bar incorrectly
[1]
1057 WINE_foo correctly
4@or_broken@ERROR
: WINE_foo incorrectly
1 [4]
1058 WINE_bar correctly
4@or_broken@ERROR
: WINE_bar incorrectly
1 [4]
1059 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
4 [1]
1060 WINE_bar correctly
1@or_broken@ERROR
: WINE_bar incorrectly
4 [1]
1061 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
1 [0]
1062 WINE_bar correctly
0@or_broken@ERROR
: WINE_bar incorrectly
1 [0]
1063 WINE_foo correctly
5@or_broken@ERROR
: WINE_foo incorrectly
0 [5]
1064 WINE_bar correctly
7@or_broken@ERROR
: WINE_bar incorrectly
[7]
1065 WINE_foo correctly
5@or_broken@ERROR
: WINE_foo incorrectly
0 [5]
1066 WINE_bar correctly
7@or_broken@ERROR
: WINE_bar incorrectly
[7]
1067 WINE_foo correctly
19@or_broken@ERROR
: WINE_foo incorrectly
0 [19]
1068 WINE_bar correctly
3@or_broken@ERROR
: WINE_bar incorrectly
[3]
1069 WINE_baz correctly
4
1071 WINE_foo correctly
1
1072 WINE_foo correctly
1
1073 WINE_foo correctly
1
1074 WINE_bar correctly
2
1075 WINE_foo correctly
1
1076 WINE_bar correctly
2
1077 WINE_foo correctly
1
1078 WINE_bar correctly
2
1079 WINE_foo correctly
1
1080 WINE_bar correctly
2
1081 WINE_foo correctly
1
1082 WINE_bar correctly
2
1083 WINE_baz correctly
3
1084 WINE_foo correctly
1
1085 WINE_bar correctly
2
1086 WINE_baz correctly
3
1087 WINE_foo correctly
1
1088 WINE_bar correctly
2
1089 WINE_baz correctly
3
1090 WINE_foo correctly
1
1091 WINE_bar correctly
2
1092 WINE_baz correctly
3
1093 WINE_foo correctly
1
1094 WINE_bar correctly
2
1095 WINE_baz correctly
3
1096 WINE_foo correctly
1
1097 WINE_foo correctly
1
1098 WINE_bar correctly
5
1099 WINE_baz correctly
2
1100 WINE_foo correctly
18
1101 WINE_foo correctly
3
1102 WINE_bar correctly
7@or_broken@ERROR
: WINE_bar incorrectly
4 [7]
1103 --- whitespace are ignored between double char operators
1104 WINE_foo correctly
10@or_broken@ERROR
: WINE_foo incorrectly
4 [10]
1105 WINE_bar correctly
50@or_broken@ERROR
: WINE_bar incorrectly
5 [50]
1106 WINE_foo correctly
772@or_broken@ERROR
: WINE_foo incorrectly
4 [772]
1107 WINE_bar correctly
7720@or_broken@ERROR
: WINE_bar incorrectly
5 [7720]
1108 --- invalid operator sequence
1111 ----- negative prefix
1112 WINE_foo correctly
-1
1113 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
[1]
1114 WINE_foo correctly
6
1115 WINE_foo correctly
0
1116 WINE_foo correctly
6
1117 WINE_foo correctly
2
1118 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
[0]
1119 WINE_foo correctly
5
1120 WINE_foo correctly
3@or_broken@ERROR
: WINE_foo incorrectly
-5 [3]
1121 ----- assignment tests involving the end destination
1122 WINE_foo correctly
11@or_broken@ERROR
: WINE_foo incorrectly
3 [11]
1123 WINE_foo correctly
6@or_broken@ERROR
: WINE_foo incorrectly
2 [6]
1124 WINE_bar correctly
9@or_broken@ERROR
: WINE_bar incorrectly
[9]
1125 WINE_foo correctly
6@or_broken@ERROR
: WINE_foo incorrectly
2 [6]
1126 WINE_bar correctly
10@or_broken@ERROR
: WINE_bar incorrectly
[10]
1127 WINE_baz correctly
7@or_broken@ERROR
: WINE_baz incorrectly
[7]
1128 WINE_foo correctly
7@or_broken@ERROR
: WINE_foo incorrectly
2 [7]
1129 WINE_bar correctly
7@or_broken@ERROR
: WINE_bar incorrectly
2 [7]
1130 ----- equal precedence
on stack
1131 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
0 [1]
1132 WINE_foo correctly
0
1133 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
[1]
1134 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
[0]
1135 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
[1]
1136 WINE_foo correctly
-1@or_broken@ERROR
: WINE_foo incorrectly
[-1]
1137 WINE_foo correctly
-1@or_broken@ERROR
: WINE_foo incorrectly
[-1]
1138 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
[1]
1139 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
[0]
1140 WINE_foo correctly
-1
1141 WINE_foo correctly
0@or_broken@ERROR
: WINE_foo incorrectly
-1 [0]
1142 WINE_foo correctly
0
1143 WINE_foo correctly
1@or_broken@ERROR
: WINE_foo incorrectly
0 [1]
1144 WINE_foo correctly
-1@or_broken@ERROR
: WINE_foo incorrectly
0 [-1]
1145 WINE_foo correctly
25@or_broken@ERROR
: WINE_foo incorrectly
20 [25]
1146 WINE_foo correctly
20
1147 WINE_foo correctly
1
1148 WINE_foo correctly
4
1149 WINE_foo correctly
7
1150 WINE_foo correctly
8@or_broken@ERROR
: WINE_foo incorrectly
4 [8]
1151 WINE_foo correctly
6@or_broken@ERROR
: WINE_foo incorrectly
5 [6]
1152 WINE_bar correctly
6@or_broken@ERROR
: WINE_bar incorrectly
5 [6]
1154 ------ string
argument
1156 a@or_broken@no output
1158 a@or_broken@no output
1160 a@or_broken@no output
1162 a@or_broken@no output
1164 a@or_broken@no output
1165 ------ fileset argument
1166 --------- basic
blank handling
1173 --------- multi
-line with empty lines
1177 --------- multiple files
1188 ------ command
argument
1189 Passed1@or_broken@Missing functionality
- Broken1
1190 Passed2@or_broken@Missing functionality
- Broken2
1191 Passed3@or_broken@Missing functionality
- Broken3
1193 and@or_broken@Broken NT4 functionality1
1194 Line@or_broken@Broken NT4 functionality2
1195 Line@or_broken@Broken NT4 functionality3
1201 ------ delims option
1216 ------ tokens
= option
1217 h
=%h i
=a j
=%j k
=%k l
=%l m
=%m o
=%o
1218 h
=%h i
=b j
=%j k
=%k l
=%l m
=%m o
=%o
1219 h
=%h i
=a j
=c k
=e l
=f m
=g o
=%o
1220 h
=%h i
=a j
=e k
=f g l
=%l m
=%m o
=%o
1221 h
=%h i
=f j
=i k
=j k l m n o p q r s t u v w x y z l
=%l m
=%m o
=%o
1222 h
=%h i
=f j
=i k
=j k l m n
;;== o p q r s t u v w x y z l
=%l m
=%m o
=%o
1223 h
=%h i
=a j
=b k
=c l
=d e f g m
=%m n
=%n o
=%o
1224 h
=%h i
=a j
=b k
=c l
=d e f g m
=%m n
=%n o
=%o
1225 h
=%h i
=a j
=b k
= l
= m
=%m n
=%n o
=%o
1226 h
=%h i
=a j
=e k
=y l
=z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z m
=%m n
=%n o
=%o
1227 h
=%h i
=a j
=b k
= l
= m
= n
=%n o
=%o
1228 h
=%h i
=a j
=b k
= l
= m
= n
= o
=%o
1229 u
=a v
=b w
=c x
=d y
=e z
=f A
=%A a
=%a
1230 @todo_wine@U
=a V
=b W
=c X
=d Y
=e Z
=f A
=%A a
=m
1231 h
=%h i
=a j
=b k
=c l
=e m
=%m o
=%o@or_broken@h
=%h i
=a j
=b k
=c l
=e m
= o
=%o
1232 h
=%h i
=e j
=%j k
=%k l
=%l m
=%m o
=%o
1233 h
=%h i
=a j
=b k
=c l
=d e f g m
=%m n
=%n o
=%o@or_broken@h
=%h i
=a j
=b k
=c l
=d e f g m
= n
=%n o
=%o
1234 h
=%h i
=a j
=c k
= l
= m
=%m n
=%n o
=%o@or_broken@h
=%h i
=a j
=c k
= l
= m
= n
=%n o
=%o
1235 h
=%h i
=b j
=c k
= l
= m
=%m n
=%n o
=%o@or_broken@h
=%h i
=b j
=c k
= l
= m
= n
=%n o
=%o
1236 h
=%h i
=b j
=c k
= l
= m
=%m n
=%n o
=%o@or_broken@h
=%h i
=b j
=c k
= l
= m
= n
=%n o
=%o
1239 ------ parameter splitting
1240 :forFParameterSplittingFunc myparam1
=myvalue1 myparam2
=myparam2 mytest@space@@space@@space@
1241 :forFParameterSplittingFunc myparam1
=myvalue1 myparam2
=myparam2 mytest@space@@space@@space@
1245 ------------ Testing del
------------
1247 errorlevel is
0, good
1248 successfully deleted
'file'
1249 attempting to
delete 'file', even though it is not present
1250 errorlevel is
0, good
1251 ------------ Testing del
/a
------------
1252 not
-r.test not found after
delete, good
1253 r.test found before
delete, good
1254 r.test not found after
delete, good
1255 ------------ Testing del
/q
------------
1256 del
/q
* succeeded
on file1
1257 del
/q
* succeeded
on file2.dat
1258 ------------ Testing del
/s
------------
1259 ------------ Testing
rename ------------
1260 --- ren and
rename are synonymous
1266 --- rename read
-only files
1267 read
-only file renamed
1268 --- rename directories
1270 read
-only
dir renamed
1271 --- rename in other directory
1272 rename impossible in other directory
1273 original file still present
1274 ------------ Testing
move ------------
1277 @todo_wine@file
move with overwrite succeeded@or_broken@file overwrite impossible
!
1278 @todo_wine@bar@or_broken@baz
1279 read
-only files are moveable
1280 file moved in subdirectory
1281 @todo_wine@moving a file to itself is a no
-op@or_broken@moving a file to itself should be a no
-op
!
1282 @todo_wine@ErrorLevel
: 0@or_broken@ErrorLevel
: 1
1284 simple directory
move succeeded
1285 moving a directory to itself gives error
; errlevel
1
1286 ------ dir in
dir move
1290 ------------ Testing
mkdir ------------
1291 --- md and
mkdir are synonymous
1294 --- creating an already existing directory
/file must fail
1297 --- multilevel path creation
1306 --- trailing backslashes
1311 mkdir ? gives errorlevel
1
1312 mkdir ?
\foo gives errorlevel
1
1313 mkdir foo
\? gives errorlevel
1
1315 mkdir foo
\bar
\? gives errorlevel
1
1317 --- multiple directories at once
1324 mkdir foo\
* errorlevel
1
1326 ------------ Testing
rmdir ------------
1335 non
-empty
dir not removed
1337 non
-empty
dir not removed
1338 recursive rmdir succeeded
1339 recursive rmdir succeeded
1344 ------------ Testing pushd
/popd
------------
1346 --- popd is no
-op when
dir stack is empty
1348 --- pushing non
-existing
dir
1353 @drive@@path@foobar
\baz
1359 ------------ Testing attrib
------------
1360 A @drive@@path@foobar
\foo@or_broken@A @drive@@path@foobar
\foo@or_broken@A I @drive@@path@foobar
\foo
1361 --- read
-only attribute
1362 A R @drive@@path@foobar
\foo@or_broken@A R @drive@@path@foobar
\foo@or_broken@A R I @drive@@path@foobar
\foo
1364 foo original contents
1365 Read
-only file not deleted
1366 Read
-only file forcibly deleted
1367 --- recursive behaviour
1368 A @drive@@path@foobar
\baz\level2@or_broken@A @drive@@path@foobar
\baz\level2@or_broken@A I @drive@@path@foobar
\baz\level2
1369 A R @drive@@path@foobar\level1@or_broken@A R @drive@@path@foobar\level1@or_broken@A R I @drive@@path@foobar\level1
1370 A R @drive@@path@foobar
\baz\level2@or_broken@A R @drive@@path@foobar
\baz\level2@or_broken@A R I @drive@@path@foobar
\baz\level2
1371 A @drive@@path@foobar
\bar@or_broken@A @drive@@path@foobar
\bar@or_broken@A I @drive@@path@foobar
\bar
1372 --- folders processing
1373 @drive@@path@foobar@or_broken@ @drive@@path@foobar@or_broken@ I @drive@@path@foobar
1374 @todo_wine@ R @drive@@path@foobar
\baz@or_broken@ R @drive@@path@foobar
\baz@or_broken@ @drive@@path@foobar
\baz@or_broken@ R I @drive@@path@foobar
\baz
1375 A @drive@@path@foobar
\baz
\toto@or_broken@A @drive@@path@foobar
\baz
\toto@or_broken@A I @drive@@path@foobar
\baz
\toto
1378 file created in read
-only
dir
1379 ------------ Testing assoc
------------
1380 --- setting association
1386 --- resetting association
1390 ------------ Testing ftype
------------
1391 --- setting association
1398 --- resetting association
1399 @todo_wine@original value@or_broken@buggyXP@or_broken@
!WINE_FOO
!
1400 ------------ Testing
CALL ------------
1410 --- internal routines
1421 Should expand foobaz
1432 ------------ Testing SHIFT
------------
1433 'p1' 'p2' 'p3' 'p4' 'p5'
1434 'p2' 'p3' 'p4' 'p5' ''
1435 'p3' 'p4' 'p5' '' ''
1439 ------------ Testing cmd invocation
------------
1440 --- a batch file can
delete itself
1441 file correctly deleted
1442 --- a batch file can alter itself
1444 ---------- Testing copy
1445 Passed
: Found expected dummy.file
1446 Passed
: Found expected dir1
\file
1
1447 Passed
: Found expected dir1
\file
1
1448 Passed
: Found expected dir1
\file
99
1449 Passed
: Found expected file1
1450 Passed
: Did not find dir2
1451 Passed
: Did not find dir2
\file
1
1452 Passed
: Found expected dir1
\file
1
1453 Passed
: Found expected dir1
\file
2
1454 Passed
: Found expected dir1
\file
3
1455 Passed
: Found expected dir1
\file
1
1456 Passed
: Found expected dir1
\file
2
1457 Passed
: Found expected dir1
\file
3
1458 Passed
: Found expected file1
1459 Passed
: Found expected file2
1460 Passed
: Found expected file3
1461 Passed
: Did not find dir2
1462 Passed
: Did not find dir2
\file
1
1463 Passed
: Did not find dir2
\file
2
1464 Passed
: Did not find dir2
\file
3
1465 Passed
: Found expected testfile
1466 Passed
: Found expected testfile
1467 Passed
: Found expected testfile
1468 Passed
: Found expected testfile
1469 Passed
: Found expected testfile
1470 Passed
: Found expected dir1
\fred
1471 Passed
: Found expected dir1
\fred
1472 Passed
: Found expected fred
1473 Passed
: Found expected fred
1474 Passed
: file size check
on file1
[5]@or_broken@Skipping file size check
on NT4
1475 Passed
: file size check
on file2
[8]@or_broken@Skipping file size check
on NT4
1476 Passed
: file size check
on file3
[11]@or_broken@Skipping file size check
on NT4
1477 Passed
: file size check
on file1_default
[5]@or_broken@Skipping file size check
on NT4
1478 Passed
: file size check
on file1_default2
[5]@or_broken@Skipping file size check
on NT4
1479 Passed
: file size check
on file1_plus_eof
[6]@or_broken@Skipping file size check
on NT4
1480 Passed
: file size check
on file2_plus_eof
[9]@or_broken@Skipping file size check
on NT4
1481 Passed
: file size check
on file3_plus_eof
[12]@or_broken@Skipping file size check
on NT4
1482 Passed
: file size check
on file12_plus_eof
[14]@or_broken@Skipping file size check
on NT4
1483 Passed
: file size check
on file12_no_eof
[13]@or_broken@Skipping file size check
on NT4
1484 Passed
: file size check
on file12_eof2
[14]@or_broken@Skipping file size check
on NT4
1485 Passed
: file size check
on file1
[24]@or_broken@Skipping file size check
on NT4
1486 Passed
: file size check
on file2
[16]@or_broken@Skipping file size check
on NT4
1487 Passed
: file size check
on file3
[13]@or_broken@Skipping file size check
on NT4
1488 Passed
: file size check
on file1_binary_srccopy
[6]@or_broken@Skipping file size check
on NT4
1489 Passed
: file size check
on file1_ascii_srccopy
[5]@or_broken@Skipping file size check
on NT4
1490 Passed
: file size check
on file123_default_copy
[25]@or_broken@Skipping file size check
on NT4
1491 Passed
: file size check
on file123_ascii_copy
[25]@or_broken@Skipping file size check
on NT4
1492 Passed
: file size check
on file123_binary_copy
[27]@or_broken@Skipping file size check
on NT4
1493 Passed
: file size check
on file123_mixed_copy1
[26]@or_broken@Skipping file size check
on NT4
1494 Passed
: file size check
on file123_mixed_copy2
[27]@or_broken@Skipping file size check
on NT4
1495 Passed
: file size check
on file123_mixed_copy3
[26]@or_broken@Skipping file size check
on NT4
1496 Passed
: file size check
on file123_mixed_copy4
[25]@or_broken@Skipping file size check
on NT4
1497 Passed
: file size check
on file123_mixed_copy5
[28]@or_broken@Skipping file size check
on NT4
1498 Passed
: file size check
on file123_mixed_copy6
[19]@or_broken@Skipping file size check
on NT4
1499 Passed
: file size check
on file123_mixed_copy7
[6]@or_broken@Skipping file size check
on NT4
1500 Passed
: file size check
on file123_mixed_copy8
[7]@or_broken@Skipping file size check
on NT4
1501 Passed
: errorlevel invalid check
1
1502 Passed
: Did not find dir1
\file
1
1503 Passed
: errorlevel invalid check
2
1504 Passed
: errorlevel invalid check
3
1505 ------------ Testing setlocal
/endlocal
------------
1506 --- enable
/disable extensions
1507 @todo_wine@ErrLev
:@space@
1510 @todo_wine@ErrLev
:@space@@or_broken@ErrLev
: 0
1512 --- setlocal with corresponding endlocal
1515 @drive@@path@foobar
\foobar
2
1520 --- setlocal with no corresponding endlocal
1523 @drive@@path@foobar
\foobar
2
1526 --- setlocal within same batch
program
1539 --- Mismatched
set and end locals
1540 --- Extra setlocal in called batch
1543 @drive@@path@foobar
\foodir
3
1546 @drive@@path@foobar
\foodir
2
1549 --- Extra endlocal in called batch
1552 @drive@@path@foobar
\foodir
2
1554 @drive@@path@foobar
\foodir
2
1557 @drive@@path@foobar
\foodir
2
1560 --- endlocal in called function rather than batch pgm is ineffective
1569 ------------ Testing Errorlevel
------------
1572 errorlevel just right
, good
1573 errorlevel with leading zero just right
, good
1574 errorlevel with negative number OK
1575 abc0def@or_broken@abc1def
1576 errorlevel zero
, good@or_broken@errorlevel nonzero
, bad
1579 ------------ Testing
GOTO ------------
1580 goto with no leading space worked
1581 goto with colon and no leading space worked
1582 goto with a leading space worked
1583 goto with a leading tab worked
1584 goto with a following space worked
1585 goto with following amphersands worked
1586 goto with redirections worked
1587 Ignoring double colons worked
1588 label with mixed whitespace and no echo worked
1589 Correctly ignored trailing information
1603 ------------ Testing PATH
------------
1607 ------------ Testing start
/W
------------
1608 start
/W seems to really wait
1609 ------------ Testing changing the drive letter
----------
1612 Normal+space
+garbage
1616 ------------ Testing combined CALLs
/GOTOs
------------