flush
[mcs.git] / class / System.Drawing / run-tests.test.bat
blobee3fc84c267e31a73f154915c473134d79618e09
1 @echo off\r
2 REM ********************************************************\r
3 REM This batch file receives the follwing parameters:\r
4 REM build/rebuild (optional): should the solution file be rebuilded \r
5 REM                             or just builded before test run (default is rebuild)\r
6 REM output files name prefix (mandratory) : prefix for naming output xml files\r
7 REM test fixture name (optional) : if you want to run some particular test fixture\r
8 REM directory to run tests (optional)\r
9 REM path back to root directory (opposite to previous param)\r
10 REM example run-tests build GhTests Test.Sys.Drawing Test\DrawingTest\Test ..\..\..\\r
11 REM will cause to build (and not rebuild) test solutions,\r
12 REM running Test.Sys.Drawing fixture in directory Test\DrawingTest\Test\r
13 REM with output files named GhTests.Net.xml and GhTests.GH.xml\r
14 REM ********************************************************\r
16 IF "%1"=="" GOTO USAGE\r
18 IF "%VMW_HOME%"=="" GOTO ENVIRONMENT_EXCEPTION\r
22 IF "%1"=="" (\r
23         set BUILD_OPTION=rebuild\r
24 ) ELSE (\r
25         set BUILD_OPTION=%1\r
26 )\r
28 REM ********************************************************\r
29 REM Set parameters\r
30 REM ********************************************************\r
32 set BUILD_OPTION=%1\r
33 set OUTPUT_FILE_PREFIX=%2\r
34 set RUNNING_FIXTURE=%3\r
35 set RUNNING_DIR=%~4\r
36 set BACK_TO_ROOT_DIR=%~5\r
38 set TEST_J2EE_SOLUTION=Test\System.Drawing.Test20.J2EE.sln\r
39 set TEST_NET_SOLUTION=Test\System.Drawing.Test20.sln\r
40 set TEST_J2EE_ASSEMBLY=System.Drawing.Test20.J2EE.jar\r
41 set TEST_NET_ASSEMBLY=System.Drawing.Test.dll\r
42 set PROJECT_J2EE_CONFIGURATION=Debug_Java20\r
43 set PROJECT_NET_CONFIGURATION=Debug\r
45 set startDate=%date%\r
46 set startTime=%time%\r
47 set sdy=%startDate:~10%\r
48 set /a sdm=1%startDate:~4,2% - 100\r
49 set /a sdd=1%startDate:~7,2% - 100\r
50 set /a sth=%startTime:~0,2%\r
51 set /a stm=1%startTime:~3,2% - 100\r
52 set /a sts=1%startTime:~6,2% - 100\r
53 set TIMESTAMP=%sdy%_%sdm%_%sdd%_%sth%_%stm%\r
56 REM ********************************************************\r
57 REM @echo Set environment\r
58 REM ********************************************************\r
60 set JGAC_PATH=%VMW_HOME%\java_refs\framework\\r
61 set JAVA_HOME=%VMW_HOME%\jre\r
63 set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar\r
64 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.jar\r
65 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.jar\r
66 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar\r
67 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%jai_imageio.jar\r
68 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Drawing.jar;\r
69 set NUNIT_OPTIONS=/exclude=NotWorking\r
71 if "%GH_VERSION%"=="" (\r
72         set GH_VERSION=0_0_0_0\r
73 )\r
75 set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%\r
76 set GH_OUTPUT_XML=%COMMON_PREFIX%.xml\r
77 set NET_OUTPUT_XML=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.Net.1.%USERNAME%.xml\r
78 set BUILD_LOG=%COMMON_PREFIX%.build.log\r
79 set RUN_LOG=%COMMON_PREFIX%.run.log\r
81 set NUNIT_PATH=%BACK_TO_ROOT_DIR%..\..\nunit20\\r
82 set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.framework.jar\r
83 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.util.jar\r
84 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.core.jar\r
85 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit-console.jar\r
86 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.\r
87 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_J2EE_ASSEMBLY%\r
89 set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"\r
91 REM ********************************************************\r
92 @echo Building GH solution...\r
93 REM ********************************************************\r
95 REM devenv Test\DrawingTest\System.Drawing.Test.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
96 msbuild %TEST_J2EE_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_J2EE_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
98 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
100 REM ********************************************************\r
101 @echo Building NUnit solution...\r
102 REM ********************************************************\r
104 if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP\r
106 REM devenv ..\..\nunit20\nunit.java.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
107 msbuild ..\..\nunit20\nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_J2EE_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
109 goto NUNITREADY\r
111 :NUNITSKIP\r
112 echo Skipping NUnit Build...\r
114 :NUNITREADY\r
115 set NUNIT_BUILD=DONE\r
117 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
119 REM ********************************************************\r
120 @echo Building .Net solution...\r
121 REM ********************************************************\r
123 REM devenv Test\DrawingTest\System.Drawing.Test.dotnet.sln /%BUILD_OPTION% Debug >%RUNNING_FIXTURE%_build.log.txt 2<&1\r
124 msbuild %TEST_NET_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_NET_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
126 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
128 REM ********************************************************\r
129 @echo Running Net reference tests...\r
130 REM ********************************************************\r
132 REM ********************************************************\r
133 @echo Running fixture "%RUNNING_FIXTURE%" (in .NET)\r
134 REM ********************************************************\r
136 if "%RUNNING_DIR%" NEQ "" (\r
137         cd %RUNNING_DIR% )\r
139 if not exist Exocortex.DSP.v1.dll (\r
140         copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\Exocortex.DSP.v1.dll .)\r
142 if not exist DrawingTest.dll (\r
143         copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\DrawingTest.dll . )\r
145 if not exist %TEST_NET_ASSEMBLY% (\r
146         copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\%TEST_NET_ASSEMBLY% . )\r
148 copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit-console.exe" .\r
149 copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.util.dll" .\r
150 copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.core.dll" .\r
151 copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.framework.dll" .\r
152 echo "==== .NET reference ==="  >> %RUN_LOG%\r
153 nunit-console.exe /fixture:%RUNNING_FIXTURE% %TEST_NET_ASSEMBLY% %NUNIT_OPTIONS% /xml=%NET_OUTPUT_XML% >>%RUN_LOG% 2<&1\r
154 echo "==== End .NET reference ==="  >> %RUN_LOG%\r
156 REM ********************************************************\r
157 @echo Running GH tests...\r
158 REM ********************************************************\r
160 REM ********************************************************\r
161 @echo Running fixture "%RUNNING_FIXTURE%"\r
162 REM ********************************************************\r
164 copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\bin\%PROJECT_J2EE_CONFIGURATION%\Exocortex.DSP.v1.jar .\r
165 copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\bin\%PROJECT_J2EE_CONFIGURATION%\DrawingTest.jar .\r
166 copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\bin\%PROJECT_J2EE_CONFIGURATION%\%TEST_J2EE_ASSEMBLY% .\r
169 REM @echo on\r
170 "%JAVA_HOME%\bin\java" -Xmx1024M -cp %CLASSPATH% NUnit.Console.ConsoleUi %TEST_J2EE_ASSEMBLY% /fixture=%RUNNING_FIXTURE%  %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUN_LOG% 2<&1\r
171 REM @echo off\r
173 if "%RUNNING_DIR%" NEQ "" (\r
174         copy %NET_OUTPUT_XML% %BACK_TO_ROOT_DIR%\r
175         copy %GH_OUTPUT_XML% %BACK_TO_ROOT_DIR%\r
176         copy %RUN_LOG% %BACK_TO_ROOT_DIR%\r
177         cd %BACK_TO_ROOT_DIR% )\r
179 REM ********************************************************\r
180 @echo Build XmlTool\r
181 REM ********************************************************\r
182 set XML_TOOL_PATH=..\..\tools\mono-xmltool\r
184 if "%XMLTOOL_BUILD%" == "DONE" goto XMLTOOLSKIP\r
186 REM devenv %XML_TOOL_PATH%\XmlTool.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
187 msbuild %XML_TOOL_PATH%\XmlTool20.csproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_J2EE_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
189 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
191 goto XMLTOOLREADY\r
193 :XMLTOOLSKIP\r
194 echo Skipping XmlToll build...\r
196 :XMLTOOLREADY\r
197 set XMLTOOL_BUILD=DONE\r
199 copy %XML_TOOL_PATH%\bin\%PROJECT_J2EE_CONFIGURATION%\xmltool.exe .\r
200 copy %XML_TOOL_PATH%\nunit_transform.xslt .\r
202 REM ********************************************************\r
203 @echo Analyze and print results\r
204 REM ********************************************************\r
205 @echo on\r
206 xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%\r
207 @echo off\r
209 :FINALLY\r
210 GOTO END\r
212 :ENVIRONMENT_EXCEPTION\r
213 @echo This test requires environment variable VMW_HOME to be defined\r
214 GOTO END\r
216 :BUILD_EXCEPTION\r
217 @echo Error in building solutions. See %BUILD_LOG% for details...\r
218 REM EXIT 1\r
219 GOTO END\r
221 :RUN_EXCEPTION\r
222 @echo Error in running fixture %RUNNING_FIXTURE%. See %RUN_LOG% for details...\r
223 REM EXIT 1\r
224 GOTO END\r
226 :USAGE\r
227 @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"\r
228 GOTO END\r
230 :END\r
233 copy %RUN_LOG% ..\\r
234 copy %BUILD_LOG% ..\\r
235 copy %GH_OUTPUT_XML% ..\\r
237 REM EXIT 0\r