Skip to content
Snippets Groups Projects
Commit 67873bdc authored by Dan Kegel's avatar Dan Kegel Committed by Alexandre Julliard
Browse files

cmd: Add simple test for %errorlevel%.

parent 61159515
No related branches found
No related tags found
No related merge requests found
...@@ -94,6 +94,24 @@ del /a:r *.test ...@@ -94,6 +94,24 @@ del /a:r *.test
if not exist r.test echo r.test not found after delete, good if not exist r.test echo r.test not found after delete, good
if exist r.test echo r.test found after delete, bad if exist r.test echo r.test found after delete, bad
echo -----------Testing Errorlevel-----------
rem nt 4.0 doesn't really support a way of setting errorlevel, so this is weak
rem See http://www.robvanderwoude.com/exit.php
call :setError 1
echo %ErrorLevel%
if errorlevel 2 echo errorlevel too high, bad
if errorlevel 1 echo errorlevel just right, good
call :setError 0
echo abc%ErrorLevel%def
if errorlevel 1 echo errorlevel nonzero, bad
if not errorlevel 1 echo errorlevel zero, good
rem Now verify that setting a real variable hides its magic variable
set errorlevel=7
echo %ErrorLevel% should be 7
if errorlevel 7 echo setting var worked too well, bad
call :setError 3
echo %ErrorLevel% should still be 7
echo -----------Testing GOTO----------- echo -----------Testing GOTO-----------
if a==a goto dest1 if a==a goto dest1
:dest1 :dest1
...@@ -107,3 +125,11 @@ echo goto with a leading tab worked ...@@ -107,3 +125,11 @@ echo goto with a leading tab worked
if d==d goto dest4 if d==d goto dest4
:dest4@space@ :dest4@space@
echo goto with a following space worked echo goto with a following space worked
echo -----------Done, jumping to EOF-----------
goto :eof
rem Subroutine to set errorlevel and return
rem in windows nt 4.0, this always sets errorlevel 1, since /b isn't supported
:setError
exit /B %1
rem This line runs under cmd in windows NT 4, but not in more modern versions.
...@@ -82,8 +82,16 @@ if /I seems to work ...@@ -82,8 +82,16 @@ if /I seems to work
not-r.test not found after delete, good not-r.test not found after delete, good
r.test found before delete, good r.test found before delete, good
r.test not found after delete, good r.test not found after delete, good
-----------Testing Errorlevel-----------
1
errorlevel just right, good
abc0def@or_broken@abc1def
errorlevel zero, good@or_broken@errorlevel nonzero, bad
7 should be 7
7 should still be 7
-----------Testing GOTO----------- -----------Testing GOTO-----------
goto with no leading space worked goto with no leading space worked
goto with a leading space worked goto with a leading space worked
goto with a leading tab worked goto with a leading tab worked
goto with a following space worked goto with a following space worked
-----------Done, jumping to EOF-----------
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment