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=Corlib_MonoTests
34 set RUNNING_FIXTURE=MonoTests.System
35 set TEST_SOLUTION=Test\Mscorlib.Test20.sln
36 set TEST_ASSEMBLY=Mscorlib.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%\jgac\vmw4j2ee_110\
56 set JAVA_HOME=%VMW_HOME%\jre6
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.Configuration.jar
62 set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar
63 set NUNIT_OPTIONS=/exclude=NotWorking,NotDotNet,TargetJvmNotSupported,TargetJvmNotWorking
65 if "%GH_VERSION%"=="" (
66 set GH_VERSION=0_0_0_0
69 set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%
70 set GH_OUTPUT_XML=%COMMON_PREFIX%.xml
71 set BUILD_LOG=%COMMON_PREFIX%.build.log
72 set RUN_LOG=%COMMON_PREFIX%.run.log
74 set NUNIT_PATH=..\..\nunit20\
75 set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.framework.jar
76 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.util.jar
77 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.core.jar
78 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit-console.jar
79 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.
80 set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_ASSEMBLY%
82 set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"
84 REM ********************************************************
85 @echo Building GH solution...
86 REM ********************************************************
88 rem devenv %TEST_SOLUTION% /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
89 msbuild %TEST_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
91 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
93 REM ********************************************************
94 @echo Building NUnit solution...
95 REM ********************************************************
97 if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP
99 REM devenv ..\..\nunit20\nunit.java.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
100 msbuild ..\..\nunit20\nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
105 echo Skipping NUnit Build...
110 IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
112 REM ********************************************************
113 @echo Running GH tests...
114 REM ********************************************************
116 REM ********************************************************
117 @echo Running fixture "%RUNNING_FIXTURE%"
118 REM ********************************************************
120 copy %BACK_TO_ROOT_DIR%Test\bin\%PROJECT_CONFIGURATION%\%TEST_ASSEMBLY% .
123 "%JAVA_HOME%\bin\java" -server -Xmx1024M -Djava.io.tmpdir="C:\Temp" -classpath %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE% %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUN_LOG% 2<&1
124 REM jdb -server -Xmx1024M -Djava.io.tmpdir="C:\Temp" -classpath %CLASSPATH% NUnit.Console.ConsoleUi %TEST_ASSEMBLY% /fixture=%RUNNING_FIXTURE% %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML%
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% ..\