New test.
[mono.git] / mcs / class / System.DirectoryServices / run-tests.test.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 output files name prefix (mandratory) : prefix for naming output xml files\r
7 REM secure mode (mandratory): secure or non-secure mode indicator\r
8 REM test fixture name (optional) : if you want to run some particular test fixture\r
9 REM example run-tests build GhTests Test.Sys.Drawing  \r
10 REM will cause to build (and not rebuild) test solutions,\r
11 REM running Test.Sys.Drawing fixture \r
12 REM with output files named GhTests.Net.xml and GhTests.GH.xml\r
13 REM ********************************************************\r
14 \r
15 IF "%1"=="" GOTO USAGE\r
16 \r
17 IF "%VMW_HOME%"=="" GOTO ENVIRONMENT_EXCEPTION\r
18 \r
19 \r
20 \r
21 IF "%1"=="" (\r
22         set BUILD_OPTION=rebuild\r
23 ) ELSE (\r
24         set BUILD_OPTION=%1\r
25 )\r
26 \r
27 REM ********************************************************\r
28 REM Set parameters\r
29 REM ********************************************************\r
30 \r
31 set BUILD_OPTION=%1\r
32 set SECURE_MODE=%2\r
33 set OUTPUT_FILE_PREFIX=%3\r
34 set RUNNING_FIXTURE=%4\r
35 set TEST_SOLUTION=Test\System.DirectoryServices.Test20.sln\r
36 set TEST_ASSEMBLY=System.DirectoryServices.Test20.jar\r
37 set PROJECT_CONFIGURATION=Debug_Java20\r
38 \r
39 set OUTPUT_FILE_PREFIX=%OUTPUT_FILE_PREFIX%_%SECURE_MODE%\r
40 \r
41 set startDate=%date%\r
42 set startTime=%time%\r
43 set sdy=%startDate:~10%\r
44 set /a sdm=1%startDate:~4,2% - 100\r
45 set /a sdd=1%startDate:~7,2% - 100\r
46 set /a sth=%startTime:~0,2%\r
47 set /a stm=1%startTime:~3,2% - 100\r
48 set /a sts=1%startTime:~6,2% - 100\r
49 set TIMESTAMP=%sdy%_%sdm%_%sdd%_%sth%_%stm%\r
50 \r
51 \r
52 REM ********************************************************\r
53 REM @echo Set environment\r
54 REM ********************************************************\r
55 \r
56 set JGAC_PATH=%VMW_HOME%\jgac\vmw4j2ee_110\\r
57 set JAVA_HOME=%VMW_HOME%\jre5\r
58 \r
59 set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar\r
60 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.jar\r
61 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.jar\r
62 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Configuration.jar\r
63 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar\r
64 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.DirectoryServices.jar;\r
65 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%Novell.Directory.Ldap.jar;\r
66 set NUNIT_OPTIONS=/exclude=NotWorking\r
67 \r
68 if "%GH_VERSION%"=="" (\r
69         set GH_VERSION=0_0_0_0\r
70 )\r
71 \r
72 set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%\r
73 set GH_OUTPUT_XML=%COMMON_PREFIX%.xml\r
74 set BUILD_LOG=%COMMON_PREFIX%.build.log\r
75 set RUN_LOG=%COMMON_PREFIX%.run.log\r
76 \r
77 set NUNIT_PATH=..\..\nunit20\\r
78 set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.framework.jar\r
79 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.util.jar\r
80 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.core.jar\r
81 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit-console.jar\r
82 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.\r
83 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_ASSEMBLY%\r
84 \r
85 set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"\r
86 \r
87 REM ********************************************************\r
88 @echo Building GH solution...\r
89 REM ********************************************************\r
90 \r
91 rem devenv Test\System.DirectoryServices.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
92 msbuild %TEST_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
93 \r
94 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
95 \r
96 REM ********************************************************\r
97 @echo Building NUnit solution...\r
98 REM ********************************************************\r
99 \r
100 if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP\r
101 \r
102 rem devenv ..\..\nunit20\nunit.java.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
103 msbuild ..\..\nunit20\nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
104 \r
105 goto NUNITREADY\r
106 \r
107 :NUNITSKIP\r
108 echo Skipping NUnit Build...\r
109 \r
110 :NUNITREADY\r
111 set NUNIT_BUILD=DONE\r
112 \r
113 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\r
114 \r
115 REM ********************************************************\r
116 @echo Running GH tests...\r
117 REM ********************************************************\r
118 \r
119 REM ********************************************************\r
120 @echo Running fixture "%RUNNING_FIXTURE%"\r
121 REM ********************************************************\r
122 \r
123 copy Test\bin\Debug_Java20\%TEST_ASSEMBLY% .\r
124 \r
125 IF "%SECURE_MODE%" NEQ "secure" (\r
126         copy App.config nunit-console.exe.config \r
127         set JVM_OPTIONS=-Xmx1024M\r
128 ) ELSE (\r
129         copy Secure.config nunit-console.exe.config \r
130         set JVM_OPTIONS=-Djava.security.krb5.conf=Test\krb5.conf.example -Djava.security.auth.login.config=Test\java.login.sun.config -Xmx1024M\r
131 )\r
132 \r
133 REM @echo on\r
134 "%JAVA_HOME%\bin\java" %JVM_OPTIONS%  -cp %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE%  %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUN_LOG% 2<&1\r
135 REM @echo off\r
136 \r
137 REM ********************************************************\r
138 @echo Build XmlTool\r
139 REM ********************************************************\r
140 set XML_TOOL_PATH=..\..\tools\mono-xmltool\r
141 rem devenv %XML_TOOL_PATH%\XmlTool.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1\r
142 msbuild %XML_TOOL_PATH%\XmlTool20.vmwcsproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1\r
143 \r
144 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION\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>"\r
175 GOTO END\r
176 \r
177 :END\r
178 copy %RUN_LOG% ..\\r
179 copy %BUILD_LOG% ..\\r
180 copy %GH_OUTPUT_XML% ..\\r
181 \r
182 REM EXIT 0\r