| 1 | @echo off |
| 2 | |
| 3 | REM Runs wxWidgets CppUnit tests |
| 4 | REM This script is used to return the correct return value to the caller |
| 5 | REM which is required by Buildbot to recognize failures. |
| 6 | REM Note that in DOS error level is not the return code of the previous |
| 7 | REM command; it is for (some!) built-in DOS commands like FIND but |
| 8 | REM in general it's not. Thus to get the return code of the test utility |
| 9 | REM we need some hack; see the guide: |
| 10 | REM http://www.infionline.net/~wtnewton/batch/batguide.html |
| 11 | REM for general info about DOS batch files. |
| 12 | |
| 13 | REM Author: Francesco Montorsi |
| 14 | REM $Id$ |
| 15 | |
| 16 | rem set the path for running the tests if they use DLL build of wx |
| 17 | for /d %%x in ("..\lib\*_dll") do @set PATH=%%x;%PATH% |
| 18 | |
| 19 | set failure=0 |
| 20 | |
| 21 | for /d %%x in (*) do @( |
| 22 | if exist %%x\test.exe ( |
| 23 | %%x\test.exe >tmp |
| 24 | |
| 25 | REM show the output of the test in the buildbot log: |
| 26 | type tmp |
| 27 | |
| 28 | REM hack to understand if the tests succeeded or not |
| 29 | REM (failure=1 is set if "OK" does not appear in the test output) |
| 30 | type tmp | find "OK" >NUL |
| 31 | if ERRORLEVEL 1 set failure=1 |
| 32 | |
| 33 | REM separe the output of the test we just executed from the next one |
| 34 | echo. |
| 35 | echo. |
| 36 | echo ======================================================================== |
| 37 | echo ======================================================================== |
| 38 | echo. |
| 39 | echo. |
| 40 | ) |
| 41 | |
| 42 | if exist %%x\test_gui.exe ( |
| 43 | %%x\test_gui.exe >tmp |
| 44 | |
| 45 | REM show the output of the test in the buildbot log: |
| 46 | type tmp |
| 47 | |
| 48 | REM hack to understand if the tests succeeded or not |
| 49 | REM (failure=1 is set if "OK" does not appear in the test output) |
| 50 | type tmp | find "OK" >NUL |
| 51 | if ERRORLEVEL 1 set failure=1 |
| 52 | ) |
| 53 | ) |
| 54 | |
| 55 | REM exit with code 1 if any of the test failed |
| 56 | del tmp |
| 57 | if %failure% EQU 1 ( |
| 58 | echo. |
| 59 | echo One or more test failed |
| 60 | echo. |
| 61 | exit 1 |
| 62 | ) |
| 63 | |
| 64 | REM remove the failure env var: |
| 65 | set failure= |
| 66 | |
| 67 | REM exit with code 0 (all tests passed successfully) |
| 68 | exit 0 |