2 REM ********************************************************
3 REM This batch file receives the follwing parameters:
4 REM build/rebuild (optional): should the solution file be rebuilded
5 REM or just builded before test run (default is rebuild)
6 REM output files name prefix (mandratory) : prefix for naming output xml files
7 REM test fixture name (optional) : if you want to run some particular test fixture
8 REM directory to run tests (optional)
9 REM path back to root directory (opposite to previous param)
10 REM example run-tests build GhTests Test.Sys.Drawing Test\DrawingTest\Test ..\..\..\
11 REM will cause to build (and not rebuild) test solutions,
12 REM running Test.Sys.Drawing fixture in directory Test\DrawingTest\Test
13 REM with output files named GhTests.Net.xml and GhTests.GH.xml
14 REM ********************************************************
16 IF "%1"=="" GOTO USAGE
18 IF "%VMW_HOME%"=="" GOTO ENVIRONMENT_EXCEPTION
23 set BUILD_OPTION=rebuild
28 REM ********************************************************
30 REM ********************************************************
33 set OUTPUT_FILE_PREFIX=System_Configuration_MonoTests
34 set RUNNING_FIXTURE=MonoTests.System.Configuration
35 set TEST_SOLUTION=Test\System.Configuration.Test20.sln
36 set TEST_ASSEMBLY=System.Configuration.Test20.jar
37 set PROJECT_CONFIGURATION=Debug_Java20
42 set sdy=%startDate:~10%
43 set /a sdm=1%startDate:~4,2% - 100
44 set /a sdd=1%startDate:~7,2% - 100
45 set /a sth=%startTime:~0,2%
46 set /a stm=1%startTime:~3,2% - 100
47 set /a sts=1%startTime:~6,2% - 100
48 set TIMESTAMP=%sdy%_%sdm%_%sdd%_%sth%_%stm%
51 REM ********************************************************
52 REM @echo Set environment
53 REM ********************************************************
55 set JGAC_PATH=%VMW_HOME%\java_refs\framework\
56 set JAVA_HOME=%VMW_HOME%\jre
58 set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar
59 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.jar
60 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.jar
61 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Web.jar
62 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Configuration.jar
63 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar
64 set NUNIT_OPTIONS=/exclude=NotWorking
66 if "%GH_VERSION%"=="" (
67 set GH_VERSION=0_0_0_0
70 set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%
71 set GH_OUTPUT_XML=%COMMON_PREFIX%.xml
72 set BUILD_LOG=%COMMON_PREFIX%.build.log
73 set RUN_LOG=%COMMON_PREFIX%.run.log
75 set NUNIT_PATH=..\..\nunit20\
76 set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.framework.jar
77 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.util.jar
78 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.core.jar
79 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit-console.jar
80 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.
81 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_ASSEMBLY%
83 set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"
85 REM ********************************************************
86 @echo Building GH solution...
87 REM ********************************************************
89 rem devenv %TEST_SOLUTION% /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
90 msbuild %TEST_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
92 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
94 REM ********************************************************
95 @echo Building NUnit solution...
96 REM ********************************************************
98 if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP
100 REM devenv ..\..\nunit20\nunit.java.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
101 msbuild ..\..\nunit20\nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
106 echo Skipping NUnit Build...
111 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
113 REM ********************************************************
114 @echo Running GH tests...
115 REM ********************************************************
117 REM ********************************************************
118 @echo Running fixture "%RUNNING_FIXTURE%"
119 REM ********************************************************
121 copy Test\bin\%PROJECT_CONFIGURATION%\%TEST_ASSEMBLY% .
124 "%JAVA_HOME%\bin\java" -Xmx1024M -cp %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE% %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUN_LOG% 2<&1
127 REM ********************************************************
129 REM ********************************************************
130 set XML_TOOL_PATH=..\..\tools\mono-xmltool
132 if "%XMLTOOL_BUILD%" == "DONE" goto XMLTOOLSKIP
134 REM devenv %XML_TOOL_PATH%\XmlTool.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
135 msbuild %XML_TOOL_PATH%\XmlTool20.csproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
137 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
142 echo Skipping XmlToll build...
145 set XMLTOOL_BUILD=DONE
147 copy %XML_TOOL_PATH%\bin\%PROJECT_CONFIGURATION%\xmltool.exe .
148 copy %XML_TOOL_PATH%\nunit_transform.xslt .
150 REM ********************************************************
151 @echo Analyze and print results
152 REM ********************************************************
154 xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%
160 :ENVIRONMENT_EXCEPTION
161 @echo This test requires environment variable VMW_HOME to be defined
165 @echo Error in building solutions. See %BUILD_LOG% for details...
170 @echo Error in running fixture %RUNNING_FIXTURE%. See %RUN_LOG% for details...
175 @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"
181 copy %GH_OUTPUT_XML% ..\