run-tests.test.bat 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. @echo off
  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 ********************************************************
  15. IF "%1"=="" GOTO USAGE
  16. IF "%VMW_HOME%"=="" GOTO ENVIRONMENT_EXCEPTION
  17. IF "%1"=="" (
  18. set BUILD_OPTION=rebuild
  19. ) ELSE (
  20. set BUILD_OPTION=%1
  21. )
  22. REM ********************************************************
  23. REM Set parameters
  24. REM ********************************************************
  25. set BUILD_OPTION=%1
  26. set OUTPUT_FILE_PREFIX=System_Configuration_MonoTests
  27. set RUNNING_FIXTURE=MonoTests.System.Configuration
  28. set TEST_SOLUTION=Test\System.Configuration.Test20.sln
  29. set TEST_ASSEMBLY=System.Configuration.Test20.jar
  30. set PROJECT_CONFIGURATION=Debug_Java20
  31. set startDate=%date%
  32. set startTime=%time%
  33. set sdy=%startDate:~10%
  34. set /a sdm=1%startDate:~4,2% - 100
  35. set /a sdd=1%startDate:~7,2% - 100
  36. set /a sth=%startTime:~0,2%
  37. set /a stm=1%startTime:~3,2% - 100
  38. set /a sts=1%startTime:~6,2% - 100
  39. set TIMESTAMP=%sdy%_%sdm%_%sdd%_%sth%_%stm%
  40. REM ********************************************************
  41. REM @echo Set environment
  42. REM ********************************************************
  43. set JGAC_PATH=%VMW_HOME%\jgac\vmw4j2ee_110\
  44. set JAVA_HOME=%VMW_HOME%\jre5
  45. set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar
  46. set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.jar
  47. set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Xml.jar
  48. set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%System.Configuration.jar
  49. set RUNTIME_CLASSPATH=%RUNTIME_CLASSPATH%;%JGAC_PATH%J2SE.Helpers.jar
  50. set NUNIT_OPTIONS=/exclude=NotWorking
  51. if "%GH_VERSION%"=="" (
  52. set GH_VERSION=0_0_0_0
  53. )
  54. set COMMON_PREFIX=%TIMESTAMP%_%OUTPUT_FILE_PREFIX%.GH_%GH_VERSION%.1.%USERNAME%
  55. set GH_OUTPUT_XML=%COMMON_PREFIX%.xml
  56. set BUILD_LOG=%COMMON_PREFIX%.build.log
  57. set RUN_LOG=%COMMON_PREFIX%.run.log
  58. set NUNIT_PATH=..\..\nunit20\
  59. set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.framework.jar
  60. set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.util.jar
  61. set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit.core.jar
  62. set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%NUNIT_PATH%nunit-console\bin\%PROJECT_CONFIGURATION%\nunit-console.jar
  63. set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;.
  64. set NUNIT_CLASSPATH=%NUNIT_CLASSPATH%;%TEST_ASSEMBLY%
  65. set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"
  66. REM ********************************************************
  67. @echo Building GH solution...
  68. REM ********************************************************
  69. rem devenv %TEST_SOLUTION% /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  70. msbuild %TEST_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
  71. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  72. REM ********************************************************
  73. @echo Building NUnit solution...
  74. REM ********************************************************
  75. if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP
  76. REM devenv ..\..\nunit20\nunit.java.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  77. msbuild ..\..\nunit20\nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
  78. goto NUNITREADY
  79. :NUNITSKIP
  80. echo Skipping NUnit Build...
  81. :NUNITREADY
  82. set NUNIT_BUILD=DONE
  83. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  84. REM ********************************************************
  85. @echo Running GH tests...
  86. REM ********************************************************
  87. REM ********************************************************
  88. @echo Running fixture "%RUNNING_FIXTURE%"
  89. REM ********************************************************
  90. copy %BACK_TO_ROOT_DIR%Test\bin\%PROJECT_CONFIGURATION%\%TEST_ASSEMBLY% .
  91. REM @echo on
  92. "%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
  93. REM @echo off
  94. REM ********************************************************
  95. @echo Build XmlTool
  96. REM ********************************************************
  97. set XML_TOOL_PATH=..\..\tools\mono-xmltool
  98. REM devenv %XML_TOOL_PATH%\XmlTool.sln /%BUILD_OPTION% %PROJECT_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  99. msbuild %XML_TOOL_PATH%\XmlTool20.vmwcsproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_CONFIGURATION% >>%BUILD_LOG% 2<&1
  100. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  101. copy %XML_TOOL_PATH%\bin\%PROJECT_CONFIGURATION%\xmltool.exe .
  102. copy %XML_TOOL_PATH%\nunit_transform.xslt .
  103. REM ********************************************************
  104. @echo Analyze and print results
  105. REM ********************************************************
  106. @echo on
  107. xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%
  108. @echo off
  109. :FINALLY
  110. GOTO END
  111. :ENVIRONMENT_EXCEPTION
  112. @echo This test requires environment variable VMW_HOME to be defined
  113. GOTO END
  114. :BUILD_EXCEPTION
  115. @echo Error in building solutions. See %BUILD_LOG% for details...
  116. REM EXIT 1
  117. GOTO END
  118. :RUN_EXCEPTION
  119. @echo Error in running fixture %RUNNING_FIXTURE%. See %RUN_LOG% for details...
  120. REM EXIT 1
  121. GOTO END
  122. :USAGE
  123. @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"
  124. GOTO END
  125. :END
  126. copy %RUN_LOG% ..\
  127. copy %BUILD_LOG% ..\
  128. copy %GH_OUTPUT_XML% ..\
  129. REM EXIT 0