2008-09-26 Marek Habersack <mhabersack@novell.com>
[mono.git] / mcs / class / System.Web / run-mono-tests.bat
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 example run-tests build \r
7 REM will cause to build (and not rebuild) test solutions,\r
8 REM ********************************************************\r
9 \r
10 IF "%VMW_HOME%"=="" GOTO ENVIRONMENT_EXCEPTION\r
11 \r
12 \r
13 \r
14 IF "%1"=="" (\r
15         set BUILD_OPTION=build\r
16 ) ELSE (\r
17         set BUILD_OPTION=%1\r
18 )\r
19 \r
20 REM ********************************************************\r
21 REM Set parameters\r
22 REM ********************************************************\r
23 \r
24 set OUTPUT_FILE_PREFIX=System_Web\r
25 set RUNNING_FIXTURE=System.Web\r
26 set TEST_SOLUTION=Test\TestMonoWeb.J2EE20.sln\r
27 set DEPLOY_PROJECT=Test\mainsoft\MainsoftWebApp20\MainsoftWebApp20.csproj\r
28 set TEST_ASSEMBLY=TestMonoWeb.jar\r
29 set PROJECT_CONFIGURATION=Debug_Java20\r
30 \r
31 \r
32 set startDate=%date%\r
33 set startTime=%time%\r
34 set sdy=%startDate:~10%\r
35 set /a sdm=1%startDate:~4,2% - 100\r
36 set /a sdd=1%startDate:~7,2% - 100\r
37 set /a sth=%startTime:~0,2%\r
38 set /a stm=1%startTime:~3,2% - 100\r
39 set /a sts=1%startTime:~6,2% - 100\r
40 set TIMESTAMP=%sdy%_%sdm%_%sdd%_%sth%_%stm%\r
41 \r
42 \r
43 REM ********************************************************\r
44 REM @echo Set environment\r
45 REM ********************************************************\r
46 \r
47 set JGAC_PATH=%VMW_HOME%\java_refs\framework\\r
48 set TOMCAT_PATH=%VMW_HOME%\jakarta-tomcat\common\lib\\r
49 set JAVA_HOME=%VMW_HOME%\jre\r
50 \r
51 set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar\r
52 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.jar\r
53 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.jar\r
54 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Web.jar\r
55 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Runtime.Serialization.Formatters.Soap.jar\r
56 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%Mainsoft.Web.jar\r
57 rem set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Drawing.jar\r
58 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar\r
59 \r
60 set FACES_PATH=%JGAC_PATH%myfaces\\r
61 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-beanutils-1.7.0.jar\r
62 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-codec-1.3.jar\r
63 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-collections-3.1.jar\r
64 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-digester-1.6.jar\r
65 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-el-1.0.jar\r
66 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-lang-2.1.jar\r
67 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%commons-logging-1.0.4.jar\r
68 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%jstl-1.1.0.jar\r
69 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%myfaces-api-1.1.5.jar\r
70 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%FACES_PATH%myfaces-impl-1.1.5.jar\r
71 \r
72 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%VMW_HOME%\java_refs\jdbc\derby.jar\r
73 \r
74 rem ./Test/mainsoft/MainsoftWebTest/bin/Debug_Java20/HtmlCompare.jar\r
75 \r
76 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;Test\mainsoft\NunitWeb\NunitWeb\bin\Debug_Java20\NunitWeb.jar\r
77 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;Test\mainsoft\MainsoftWebTest\bin\Debug_Java20\HtmlCompare.jar\r
78 \r
79 set TOMCAT_CLASSPATH=%TOMCAT_PATH%servlet-api.jar\r
80 set NUNIT_OPTIONS=/exclude=NotWorking\r
81 \r
82 if "%GH_VERSION%"=="" (\r
83         set GH_VERSION=0_0_0_0\r
84 )\r
85 \r
86 set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%\r
87 set GH_OUTPUT_XML=%COMMON_PREFIX%.xml\r
88 set BUILD_LOG=%COMMON_PREFIX%.build.log\r
89 set RUN_LOG=%COMMON_PREFIX%.run.log\r
90 \r
91 set NUNIT_PATH=..\..\nunit20\\r
92 set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.framework.jar\r
93 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.util.jar\r
94 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.core.jar\r
95 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit-console.jar\r
96 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.\r
97 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_ASSEMBLY%\r
98 \r
99 set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%;%TOMCAT_CLASSPATH%"\r
100 \r
101 IF "%BUILD_OPTION%"=="nobuild" GOTO RUN\r
102 \r
103 REM ********************************************************\r
104 @echo Building GH solution...\r
105 REM ********************************************************\r
106 xcopy /y Test\mainsoft\NunitWeb\NunitWeb\Resources\*.as* Test\mainsoft\MainsoftWebApp20\\r
107 xcopy /y Test\mainsoft\NunitWeb\NunitWeb\Resources\*.master Test\mainsoft\MainsoftWebApp20\\r
108 xcopy /y Test\mainsoft\NunitWebResources\*.* Test\mainsoft\MainsoftWebApp20\\r
109 pushd Test\mainsoft\MainsoftWebApp20\\r
110 xcopy /y WizardTest.skin App_Themes\Theme1\\r
111 xcopy /y Theme1.skin App_Themes\Theme1\\r
112 xcopy /y Theme2.skin App_Themes\Theme2\\r
113 xcopy /y ResolveUrl.ascx Folder\\r
114 mkdir XXX\r
115 for %%i in (*.as*) DO sed "s/CodeFile=/CodeBehind=/" %%i > XXX\%%i\r
116 move /Y XXX\* .\r
117 rmdir XXX\r
118 popd\r
119 \r
120 msbuild %TEST_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
121 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
122 \r
123 REM ********************************************************\r
124 @echo Deploying GH solution to tomcat...\r
125 REM ********************************************************\r
126 IF NOT DEFINED VMW_BUILDER GOTO MSBUILD_DEPLOY\r
127 set CATALINA_HOME=%VMW_HOME%\jakarta-tomcat\r
128 call "%VMW_HOME%\jakarta-tomcat\bin\shutdown.bat"\r
129 echo Waiting 5 sec for tomcat to stop....\r
130 @ping 127.0.0.1 -n 5 -w 1000 > nul\r
131 del /q "%VMW_HOME%\jakarta-tomcat\webapps\MainsoftWebApp20.war"\r
132 rmdir /s /q "%VMW_HOME%\jakarta-tomcat\webapps\MainsoftWebApp20"\r
133 xcopy /Y Test\mainsoft\MainsoftWebApp20\bin\%PROJECT_CONFIGURATION%\MainsoftWebApp20.war "%VMW_HOME%\jakarta-tomcat\webapps"\r
134 call "%VMW_HOME%\jakarta-tomcat\bin\startup.bat"\r
135 echo Waiting 5 sec for tomcat to start....\r
136 @ping 127.0.0.1 -n 5 -w 1000 > nul\r
137 GOTO AFTER_DEPLOY\r
138 :MSBUILD_DEPLOY\r
139 echo msbuild %DEPLOY_PROJECT% /t:Deploy /p:Configuration=%PROJECT_CONFIGURATION% /p:Platform=AnyCPU >>%BUILD_LOG% \r
140 msbuild %DEPLOY_PROJECT% /t:Deploy /p:Configuration=%PROJECT_CONFIGURATION% /p:Platform=AnyCPU >>%BUILD_LOG% 2<&1\r
141 :AFTER_DEPLOY\r
142 \r
143 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
144 \r
145 IF "%BUILD_OPTION%"=="nobuild" GOTO RUN\r
146 \r
147 REM ********************************************************\r
148 @echo Building NUnit solution...\r
149 REM ********************************************************\r
150 \r
151 if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP\r
152 msbuild %NUNIT_PATH%\nunit20.java.sln /t:%BUILD_OPTION% /p:configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
153 \r
154 goto NUNITREADY\r
155 \r
156 :NUNITSKIP\r
157 echo Skipping NUnit Build...\r
158 \r
159 :NUNITREADY\r
160 set NUNIT_BUILD=DONE\r
161 \r
162 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
163 \r
164 :RUN\r
165 REM ********************************************************\r
166 @echo Running GH tests...\r
167 REM ********************************************************\r
168 \r
169 REM ********************************************************\r
170 @echo Running fixture "%RUNNING_FIXTURE%"\r
171 REM ********************************************************\r
172 \r
173 copy Test\bin\%PROJECT_CONFIGURATION%\%TEST_ASSEMBLY% .\r
174 \r
175 REM @echo on\r
176 "%JAVA_HOME%\bin\java" -Xmx1024M -XX:MaxPermSize=128m -cp %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUN_LOG% 2<&1\r
177 REM @echo off\r
178 \r
179 IF NOT DEFINED VMW_BUILDER GOTO DONT_SHUTDOWN_TOMCAT\r
180 set CATALINA_HOME=%VMW_HOME%\jakarta-tomcat\r
181 call "%VMW_HOME%\jakarta-tomcat\bin\shutdown.bat"\r
182 :DONT_SHUTDOWN_TOMCAT\r
183 \r
184 REM ********************************************************\r
185 @echo Build XmlTool\r
186 REM ********************************************************\r
187 set XML_TOOL_PATH=..\..\tools\mono-xmltool\r
188 \r
189 if "%XMLTOOL_BUILD%" == "DONE" goto XMLTOOLSKIP\r
190 \r
191 msbuild %XML_TOOL_PATH%\XmlTool20.csproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
192 \r
193 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
194 \r
195 goto XMLTOOLREADY\r
196 \r
197 :XMLTOOLSKIP\r
198 echo Skipping XmlToll build...\r
199 \r
200 :XMLTOOLREADY\r
201 set XMLTOOL_BUILD=DONE\r
202 \r
203 copy %XML_TOOL_PATH%\bin\%PROJECT_CONFIGURATION%\xmltool.exe .\r
204 copy %XML_TOOL_PATH%\nunit_transform.xslt .\r
205 \r
206 REM ********************************************************\r
207 @echo Analyze and print results\r
208 REM ********************************************************\r
209 @echo on\r
210 xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%\r
211 @echo off\r
212 \r
213 :FINALLY\r
214 GOTO END\r
215 \r
216 :ENVIRONMENT_EXCEPTION\r
217 @echo This test requires environment variable VMW_HOME to be defined\r
218 GOTO END\r
219 \r
220 :BUILD_EXCEPTION\r
221 @echo Error in building solutions. See %BUILD_LOG% for details...\r
222 REM EXIT 1\r
223 GOTO END\r
224 \r
225 :RUN_EXCEPTION\r
226 @echo Error in running fixture %RUNNING_FIXTURE%. See %RUN_LOG% for details...\r
227 REM EXIT 1\r
228 GOTO END\r
229 \r
230 :USAGE\r
231 @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"\r
232 GOTO END\r
233 \r
234 :END\r
235 copy %RUN_LOG% ..\\r
236 copy %BUILD_LOG% ..\\r
237 copy %GH_OUTPUT_XML% ..\\r
238 \r
239 REM EXIT 0\r