cmd/tests: Add ftype tests.

This commit is contained in:
Frédéric Delanoy 2011-08-29 21:45:19 +02:00 committed by Alexandre Julliard
parent caa8fc041d
commit 74566422c7
2 changed files with 52 additions and 0 deletions

View File

@ -1113,6 +1113,48 @@ type baz
echo *** echo ***
cd .. & rd /s/q foobar cd .. & rd /s/q foobar
echo ------------ Testing ftype --------------
rem FIXME Can't test error messages in the current test system, so we have to use some kludges
rem FIXME Revise once || conditional execution is fixed
mkdir foobar & cd foobar
echo ...setting association
ftype footype> baz
type baz
echo ***
ftype footype=foo_opencmd
assoc .foo=footype
ftype footype
rem association set system-wide
echo @echo off> tmp.cmd
echo echo +++>> tmp.cmd
echo ftype footype>> tmp.cmd
cmd /c tmp.cmd
echo ...resetting association
assoc .foo=
rem Removing a file type association doesn't work on XP due to a bug, so a workaround is needed
setlocal EnableDelayedExpansion
set FOO=original value
ftype footype=
ftype footype > baz
for /F %%i in ('type baz') do (set FOO=buggyXP)
rem Resetting actually works on wine/NT4, but is reported as failing due to the peculiar test (and non-support for EnabledDelayedExpansion)
rem FIXME Revisit once a grep-like program like ftype is implemented
rem (e.g. to check baz's size using dir /b instead)
echo !FOO!
rem cleanup registry
echo REGEDIT4> regCleanup.reg
echo.>> regCleanup.reg
echo [-HKEY_CLASSES_ROOT\footype]>> regCleanup.reg
regedit /s regCleanup.reg
set FOO=
endlocal
cd .. & rd /s/q foobar
echo ------------ Testing CALL -------------- echo ------------ Testing CALL --------------
mkdir foobar & cd foobar mkdir foobar & cd foobar
rem External script rem External script

View File

@ -665,6 +665,16 @@ file created in read-only dir
*** ***
+++ +++
*** ***
------------ Testing ftype --------------
...setting association
***
footype=foo_opencmd
.foo=footype
footype=foo_opencmd
+++
footype=foo_opencmd
...resetting association
@todo_wine@original value@or_broken@buggyXP@or_broken@!FOO!
------------ Testing CALL -------------- ------------ Testing CALL --------------
foo@space@ foo@space@
foo 8 foo 8