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