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
23 set BUILD_OPTION=rebuild
\r
28 REM ********************************************************
\r
30 REM ********************************************************
\r
33 set OUTPUT_FILE_PREFIX=%2
\r
34 set RUNNING_FIXTURE=%3
\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
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
112 echo Skipping NUnit Build...
\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
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
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
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
194 echo Skipping XmlToll build...
\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
206 xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%
\r
212 :ENVIRONMENT_EXCEPTION
\r
213 @echo This test requires environment variable VMW_HOME to be defined
\r
217 @echo Error in building solutions. See %BUILD_LOG% for details...
\r
222 @echo Error in running fixture %RUNNING_FIXTURE%. See %RUN_LOG% for details...
\r
227 @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"
\r
234 copy %BUILD_LOG% ..\
\r
235 copy %GH_OUTPUT_XML% ..\
\r