73 lines
1.6 KiB
Batchfile
73 lines
1.6 KiB
Batchfile
echo Tests for cmd's builtin commands
|
|
@echo off
|
|
|
|
echo ------------ Testing 'echo' --------------
|
|
echo word
|
|
echo 'singlequotedword'
|
|
echo "doublequotedword"
|
|
@echo at-echoed-word
|
|
echo "/?"
|
|
echo.
|
|
echo .
|
|
|
|
echo ------------ Testing 'set' --------------
|
|
echo set "FOO=bar" should not include the quotes in the variable value
|
|
set "FOO=bar"
|
|
echo %FOO%
|
|
|
|
echo ------------ Testing variable expansion --------------
|
|
echo ~dp0 should be directory containing batch file
|
|
echo %~dp0
|
|
mkdir dummydir
|
|
cd dummydir
|
|
echo %~dp0
|
|
cd ..
|
|
rmdir dummydir
|
|
echo CD value %CD%
|
|
echo %%
|
|
echo P%
|
|
echo %P
|
|
echo %UNKNOWN%S
|
|
echo P%UNKNOWN%
|
|
echo P%UNKNOWN%S
|
|
echo %ERRORLEVEL
|
|
echo %ERRORLEVEL%
|
|
echo %ERRORLEVEL%%ERRORLEVEL%
|
|
echo %ERRORLEVEL%ERRORLEVEL%
|
|
echo %ERRORLEVEL%%
|
|
echo %ERRORLEVEL%%%
|
|
echo P%ERRORLEVEL%
|
|
echo %ERRORLEVEL%S
|
|
echo P%ERRORLEVEL%S
|
|
|
|
echo ------------ Testing if/else --------------
|
|
echo if/else should work with blocks
|
|
if 0 == 0 (
|
|
echo if seems to work
|
|
) else (
|
|
echo if seems to be broken
|
|
)
|
|
if 1 == 0 (
|
|
echo else seems to be broken
|
|
) else (
|
|
echo else seems to work
|
|
)
|
|
echo Testing case sensitivity with and without /i option
|
|
if bar==BAR echo if does not default to case sensitivity
|
|
if not bar==BAR echo if seems to default to case sensitivity
|
|
if /i foo==FOO echo if /i seems to work
|
|
if /i not foo==FOO echo if /i seems to be broken
|
|
if /I foo==FOO echo if /I seems to work
|
|
if /I not foo==FOO echo if /I seems to be broken
|
|
|
|
echo -----------Testing GOTO-----------
|
|
if a==a goto dest1
|
|
:dest1
|
|
echo goto with no leading space worked
|
|
if b==b goto dest2
|
|
:dest2
|
|
echo goto with a leading space worked
|
|
if c==c goto dest3
|
|
:dest3
|
|
echo goto with a leading tab worked
|