mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-30 04:48:36 +00:00
cmd/tests: Test success/failure of commands.
The || and && operators to chain commands rely on the LHS command to be successful (or unsucessful) to decide upon launching the RHS command. Unfortunately, success/failure is not always when errorlevel is 0 (non zero). Some exmaples: - if a redirection fails (eg. appending to a non existing file), the command (builtin/external) is always unsuccessful (and the error level is untouched, - external command (when redirection is ok) is succesful when program exit code is zero, - ditto for a call to a label inside the batch file, with the 'exit /b' parameter, - it's way more complicated for builtins. Eg 'type' is unsuccessful on a non existing file, while 'dir' (on the same unexisting file) succeeds. So start adding some tests about success / failure of some commands. Signed-off-by: Eric Pouech <epouech@codeweavers.com>
This commit is contained in:
parent
289c49ee21
commit
6f0e9e5e4e
|
@ -450,6 +450,15 @@ if 1==0 (echo o1) else echo o2&&echo o3
|
|||
if 1==0 (echo p1) else echo p2||echo p3
|
||||
echo ---
|
||||
if 1==0 (echo q1) else echo q2&echo q3
|
||||
echo ------------- Testing internal commands return codes
|
||||
call :setError 0 &&echo SUCCESS||echo FAILURE %errorlevel%
|
||||
call :setError 33 &&echo SUCCESS||echo FAILURE %errorlevel%
|
||||
call :setError 666
|
||||
echo foo &&echo SUCCESS||echo FAILURE %errorlevel%
|
||||
echo foo >> h:\i\dont\exist\at\all.txt &&echo SUCCESS||echo FAILURE %errorlevel%
|
||||
type NUL &&echo SUCCESS||echo FAILURE %errorlevel%
|
||||
type h:\i\dont\exist\at\all.txt &&echo SUCCESS||echo FAILURE %errorlevel%
|
||||
echo ---
|
||||
echo ------------ Testing 'set' ------------
|
||||
call :setError 0
|
||||
rem Remove any WINE_FOO* WINE_BA* environment variables from shell before proceeding
|
||||
|
|
|
@ -449,6 +449,15 @@ p2
|
|||
@todo_wine@---
|
||||
q2
|
||||
q3
|
||||
------------- Testing internal commands return codes
|
||||
SUCCESS
|
||||
FAILURE 0
|
||||
@todo_wine@foo@space@
|
||||
@todo_wine@SUCCESS
|
||||
@todo_wine@FAILURE 666
|
||||
SUCCESS
|
||||
@todo_wine@FAILURE 0
|
||||
@todo_wine@---
|
||||
------------ Testing 'set' ------------
|
||||
1
|
||||
0
|
||||
|
|
Loading…
Reference in a new issue