Run wxExecute() unit test in the GUI test suite too.
[wxWidgets.git] / tests / runtests.bat
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 echo.
24 echo ========================================================================
25 echo Running non-GUI unit test
26 echo ========================================================================
27 echo.
28 %%x\test.exe -t >tmp
29
30 REM show the output of the test in the buildbot log:
31 type tmp
32
33 REM hack to understand if the tests succeeded or not
34 REM (failure=1 is set if "OK" does not appear in the test output)
35 type tmp | find "OK" >NUL
36 if ERRORLEVEL 1 set failure=1
37
38 REM separe the output of the test we just executed from the next one
39 echo.
40 echo ========================================================================
41 echo Non-GUI test done
42 echo ========================================================================
43 echo.
44 )
45
46 if exist %%x\test_gui.exe (
47 echo.
48 echo ========================================================================
49 echo Running GUI unit test
50 echo ========================================================================
51 echo.
52 %%x\test_gui.exe -t >tmp
53
54 REM show the output of the test in the buildbot log:
55 type tmp
56
57 REM hack to understand if the tests succeeded or not
58 REM (failure=1 is set if "OK" does not appear in the test output)
59 type tmp | find "OK" >NUL
60 if ERRORLEVEL 1 set failure=1
61
62 echo.
63 echo ========================================================================
64 echo GUI test done
65 echo ========================================================================
66 echo.
67 )
68 )
69
70 REM exit with code 1 if any of the test failed
71 del tmp
72 if %failure% EQU 1 (
73 echo.
74 echo One or more test failed
75 echo.
76 exit 1
77 )
78
79 REM remove the failure env var:
80 set failure=
81
82 REM exit with code 0 (all tests passed successfully)
83 exit 0