poco/build/script/runtests.cmd

75 lines
1.4 KiB
Batchfile
Raw Normal View History

2014-01-16 22:06:40 +01:00
@echo off
rem
rem A script for running the POCO testsuites.
rem
2014-01-17 00:02:45 +01:00
rem usage: runtests [64]
2014-01-16 22:06:40 +01:00
rem
rem If the environment variable EXCLUDE_TESTS is set, containing
rem a space-separated list of project names (as found in the
rem components file), these tests will be skipped.
rem
setlocal EnableDelayedExpansion
set TESTRUNNER=TestSuite.exe
2014-01-16 22:34:46 +01:00
set TESTRUNNERARGS=/B:TestSuite.out
2014-01-17 00:02:45 +01:00
set BINDIR=bin
2014-01-17 00:08:37 +01:00
if "%1"=="64" (
2014-01-17 00:02:45 +01:00
set BINDIR=bin64
)
2014-01-16 22:06:40 +01:00
set runs=0
set failures=0
set failedTests=
set status=0
set excluded=0
for /f %%C in ('findstr /R "." components') do (
set excluded=0
for %%X in (%EXCLUDE_TESTS%) do (
if "%%X"=="%%C" (
set excluded=1
)
)
if !excluded!==0 (
if exist %%C (
if exist %%C\testsuite (
2014-01-17 00:02:45 +01:00
if exist %%C\testsuite\%BINDIR%\%TESTRUNNER% (
2014-01-16 22:06:40 +01:00
echo.
echo.
echo ****************************************
echo *** %%C
echo ****************************************
2014-01-16 22:06:40 +01:00
echo.
set /a runs=!runs! + 1
set dir=%CD%
cd %%C\testsuite
%BINDIR%\%TESTRUNNER% %TESTRUNNERARGS%
2014-01-16 22:06:40 +01:00
if !ERRORLEVEL! neq 0 (
set /a failures=!failures! + 1
set failedTests=!failedTests! %%C
set status=1
)
2014-01-17 00:02:45 +01:00
if exist TestSuite.out (
2014-01-16 22:34:46 +01:00
type TestSuite.out
)
2014-01-16 22:06:40 +01:00
cd !dir!
)
)
)
)
)
echo.
echo.
echo !runs! runs, !failures! failed.
echo.
for %%F in (!failedTests!) do (
echo Failed: %%F
)
echo.
exit /b !status!