Fix run-tests script to copy run logs.
[mono.git] / mcs / class / System.Xml.Linq / run-tests.test.bat
1 REM @echo on\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
15 \r
16 IF "%1"=="" GOTO USAGE\r
17 \r
18 IF "%VMW_HOME%"=="" GOTO ENVIRONMENT_EXCEPTION\r
19 \r
20 REM ********************************************************\r
21 REM Set parameters\r
22 REM ********************************************************\r
23 \r
24 set BUILD_OPTION=%1\r
25 set OUTPUT_FILE_PREFIX=System_Xml_Linq_MonoTests\r
26 set RUNNING_FIXTURE=MonoTests.System.Xml.Linq\r
27 set TEST_PROJECT=Test\System.Xml.Linq.Tests.csproj\r
28 set TEST_ASSEMBLY=System.Xml.Linq.Tests.jar\r
29 set PROJECT_CONFIGURATION=Debug_Java\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 JAVA_HOME=%VMW_HOME%\jre\r
49 \r
50 set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar\r
51 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.jar\r
52 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.jar\r
53 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Configuration.jar\r
54 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar\r
55 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Drawing.jar\r
56 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.Linq.jar\r
57 set NUNIT_OPTIONS=/exclude=NotWorking,NotDotNet,TargetJvmNotSupported,TargetJvmNotWorking,NotDotNet\r
58 \r
59 if "%GH_VERSION%"=="" (\r
60         set GH_VERSION=0_0_0_0\r
61 )\r
62 \r
63 set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%\r
64 set GH_OUTPUT_XML=%COMMON_PREFIX%.xml\r
65 set BUILD_LOG=%COMMON_PREFIX%.build.log\r
66 set RUN_LOG=%COMMON_PREFIX%.run.log\r
67 \r
68 set OUTPUT_DIR=..\..\r
69 set NUNIT_PATH=..\..\nunit20\r
70 set NUNIT_CONFIGURATION=Debug_Java20\r
71 set NUNIT_CLASSPATH=%NUNIT_PATH%\nunit-console\bin\%NUNIT_CONFIGURATION%\nunit.framework.jar\r
72 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%\nunit-console\bin\%NUNIT_CONFIGURATION%\nunit.util.jar\r
73 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%\nunit-console\bin\%NUNIT_CONFIGURATION%\nunit.core.jar\r
74 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%\nunit-console\bin\%NUNIT_CONFIGURATION%\nunit-console.jar\r
75 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.\r
76 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_ASSEMBLY%\r
77 \r
78 set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"\r
79 \r
80 REM ********************************************************\r
81 @echo Building GH solution...\r
82 REM ********************************************************\r
83 \r
84 msbuild %TEST_PROJECT% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
85 \r
86 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
87 \r
88 REM ********************************************************\r
89 rem @echo Building NUnit solution...\r
90 REM ********************************************************\r
91 \r
92 if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP\r
93 \r
94 REM devenv ..\..\..\nunit20\nunit.java.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
95 rem msbuild %NUNIT_PATH%nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
96 \r
97 goto NUNITREADY\r
98 \r
99 :NUNITSKIP\r
100 echo Skipping NUnit Build...\r
101 \r
102 :NUNITREADY\r
103 set NUNIT_BUILD=DONE\r
104 \r
105 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
106 \r
107 REM ********************************************************\r
108 @echo Running GH tests...\r
109 REM ********************************************************\r
110 \r
111 REM ********************************************************\r
112 @echo Running fixture "%RUNNING_FIXTURE%"\r
113 REM ********************************************************\r
114 \r
115 copy Test\bin\%PROJECT_CONFIGURATION%\%TEST_ASSEMBLY% .\r
116 \r
117 set TEST_TEMP=C:\MonoTemp\r
118 mkdir %TEST_TEMP%\r
119 \r
120 REM @echo on\r
121 echo "%JAVA_HOME%\bin\java" -server -Xmx1024M -Djava.io.tmpdir="%TEST_TEMP%" -classpath %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE%  %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% \r
122 "%JAVA_HOME%\bin\java" -server -Xmx1024M -Djava.io.tmpdir="%TEST_TEMP%" -classpath %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE%  %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUN_LOG% 2<&1\r
123 REM jdb -server -Xmx1024M -Djava.io.tmpdir="%TEST_TEMP%" -classpath %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE%  %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML%\r
124 REM @echo off\r
125 \r
126 REM ********************************************************\r
127 @echo Build XmlTool\r
128 REM ********************************************************\r
129 set XML_TOOL_PATH=..\..\tools\mono-xmltool\r
130 \r
131 if "%XMLTOOL_BUILD%" == "DONE" goto XMLTOOLSKIP\r
132 \r
133 REM devenv %XML_TOOL_PATH%\XmlTool.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
134 msbuild %XML_TOOL_PATH%\XmlTool20.csproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
135 \r
136 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
137 \r
138 goto XMLTOOLREADY\r
139 \r
140 :XMLTOOLSKIP\r
141 echo Skipping XmlToll build...\r
142 \r
143 :XMLTOOLREADY\r
144 set XMLTOOL_BUILD=DONE\r
145 \r
146 copy %XML_TOOL_PATH%\bin\%PROJECT_CONFIGURATION%\xmltool.exe .\r
147 copy %XML_TOOL_PATH%\nunit_transform.xslt .\r
148 \r
149 REM ********************************************************\r
150 @echo Analyze and print results\r
151 REM ********************************************************\r
152 @echo on\r
153 xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%\r
154 @echo off\r
155 \r
156 :FINALLY\r
157 GOTO END\r
158 \r
159 :ENVIRONMENT_EXCEPTION\r
160 @echo This test requires environment variable VMW_HOME to be defined\r
161 GOTO END\r
162 \r
163 :BUILD_EXCEPTION\r
164 @echo Error in building solutions. See %BUILD_LOG% for details...\r
165 REM EXIT 1\r
166 GOTO END\r
167 \r
168 :RUN_EXCEPTION\r
169 @echo Error in running fixture %RUNNING_FIXTURE%. See %RUN_LOG% for details...\r
170 REM EXIT 1\r
171 GOTO END\r
172 \r
173 :USAGE\r
174 @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"\r
175 GOTO END\r
176 \r
177 :END\r
178 copy %RUN_LOG% %OUTPUT_DIR%\r
179 copy %BUILD_LOG% %OUTPUT_DIR%\r
180 copy %GH_OUTPUT_XML% %OUTPUT_DIR%\r
181 \r
182 REM EXIT 0\r