run-tests.test.bat 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  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. REM ********************************************************
  18. REM Set parameters
  19. REM ********************************************************
  20. set BUILD_OPTION=%1
  21. set OUTPUT_FILE_PREFIX=%2
  22. set RUNNING_FIXTURE=%3
  23. set RUNNING_DIR=%~4
  24. set BACK_TO_ROOT_DIR=%~5
  25. set TEST_J2EE_SOLUTION=Test\System.Drawing.Test20.J2EE.sln
  26. set TEST_NET_SOLUTION=Test\System.Drawing.Test20.sln
  27. set TEST_J2EE_ASSEMBLY=System.Drawing.Test20.J2EE.jar
  28. set TEST_NET_ASSEMBLY=System.Drawing.Test.dll
  29. set PROJECT_J2EE_CONFIGURATION=Debug_Java20
  30. set PROJECT_NET_CONFIGURATION=Debug
  31. set NUNIT_CONSOLE_PATH="C:\Program Files\NUnit-Net-2.0 2.2.8\bin"
  32. set JAVA_HOME=%VMW_HOME%\jre5
  33. REM ********************************************************
  34. REM @echo Set environment
  35. REM ********************************************************
  36. set JGAC_PATH=%VMW_HOME%\jgac\vmw4j2ee_110\
  37. set RUNTIME_CLASSPATH=%JGAC_PATH%mscorlib.jar;%JGAC_PATH%System.jar;%JGAC_PATH%System.Xml.jar;%JGAC_PATH%System.Drawing.jar;%JGAC_PATH%J2SE.Helpers.jar;%JGAC_PATH%jai_imageio.jar
  38. set NUNIT_OPTIONS=/exclude=NotWorking
  39. set NET_OUTPUT_XML=%OUTPUT_FILE_PREFIX%.Net.xml
  40. set GH_OUTPUT_XML=%OUTPUT_FILE_PREFIX%.GH.xml
  41. set NUNIT_PATH=%BACK_TO_ROOT_DIR%..\..\nunit20\
  42. set NUNIT_CLASSPATH=%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.framework.jar;%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.util.jar;%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.core.jar;%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit-console.jar
  43. set CLASSPATH="%RUNTIME_CLASSPATH%;%NUNIT_CLASSPATH%"
  44. REM ********************************************************
  45. @echo Building .Net solution...
  46. REM ********************************************************
  47. REM devenv Test\DrawingTest\System.Drawing.Test.dotnet.sln /%BUILD_OPTION% Debug >%RUNNING_FIXTURE%_build.log.txt 2<&1
  48. msbuild %TEST_NET_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_NET_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  49. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  50. if "%NUNIT_BUILD%" == "DONE" goto NUNITSKIP
  51. REM ********************************************************
  52. @echo Building NUnit solution...
  53. REM ********************************************************
  54. REM devenv ..\..\nunit20\nunit.java.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  55. msbuild ..\..\nunit20\nunit20.java.sln /t:%BUILD_OPTION% /p:Configuration=%PROJECT_J2EE_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  56. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  57. goto NUNITREADY
  58. :NUNITSKIP
  59. echo Skipping NUnit Build...
  60. :NUNITREADY
  61. set NUNIT_BUILD=DONE
  62. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  63. REM ********************************************************
  64. @echo Building GH solution...
  65. REM ********************************************************
  66. REM devenv Test\DrawingTest\System.Drawing.Test.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  67. msbuild %TEST_J2EE_SOLUTION% /t:%BUILD_OPTION% /p:Configuration=%PROJECT_J2EE_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  68. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  69. REM ********************************************************
  70. @echo Running Net reference tests...
  71. REM ********************************************************
  72. REM ********************************************************
  73. @echo Running fixture "%RUNNING_FIXTURE%"
  74. REM ********************************************************
  75. if "%RUNNING_DIR%" NEQ "" (
  76. cd %RUNNING_DIR% )
  77. if not exist Exocortex.DSP.v1.dll (
  78. copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\Exocortex.DSP.v1.dll .)
  79. if not exist DrawingTest.dll (
  80. copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\DrawingTest.dll . )
  81. if not exist %TEST_NET_ASSEMBLY% (
  82. copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\%TEST_NET_ASSEMBLY% . )
  83. copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit-console.exe" .
  84. copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.util.dll" .
  85. copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.core.dll" .
  86. copy "%NUNIT_PATH%nunit-console\bin\%PROJECT_J2EE_CONFIGURATION%\nunit.framework.dll" .
  87. %NUNIT_CONSOLE_PATH%\nunit-console.exe /fixture:%RUNNING_FIXTURE% %TEST_NET_ASSEMBLY% %NUNIT_OPTIONS% /xml=%NET_OUTPUT_XML% >%RUNNING_FIXTURE%_run.log.txt 2<&1
  88. REM ********************************************************
  89. @echo Running GH tests...
  90. REM ********************************************************
  91. REM ********************************************************
  92. @echo Running fixture "%RUNNING_FIXTURE%"
  93. REM ********************************************************
  94. copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\bin\%PROJECT_J2EE_CONFIGURATION%\Exocortex.DSP.v1.jar .
  95. copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\bin\%PROJECT_J2EE_CONFIGURATION%\DrawingTest.jar .
  96. copy %BACK_TO_ROOT_DIR%Test\DrawingTest\Test\bin\%PROJECT_J2EE_CONFIGURATION%\%TEST_J2EE_ASSEMBLY% .
  97. REM @echo on
  98. "%JAVA_HOME%\bin\java" -Xmx1024M -cp %CLASSPATH% NUnit.Console.ConsoleUi %TEST_J2EE_ASSEMBLY% /fixture=%RUNNING_FIXTURE% %NUNIT_OPTIONS% /xml=%GH_OUTPUT_XML% >>%RUNNING_FIXTURE%_run.log.txt 2<&1
  99. REM @echo off
  100. if "%RUNNING_DIR%" NEQ "" (
  101. copy %NET_OUTPUT_XML% %BACK_TO_ROOT_DIR%
  102. copy %GH_OUTPUT_XML% %BACK_TO_ROOT_DIR%
  103. cd %BACK_TO_ROOT_DIR% )
  104. REM ********************************************************
  105. @echo Build XmlTool
  106. REM ********************************************************
  107. set XML_TOOL_PATH=..\..\tools\mono-xmltool
  108. REM devenv %XML_TOOL_PATH%\XmlTool.sln /%BUILD_OPTION% Debug_Java >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  109. msbuild %XML_TOOL_PATH%\XmlTool20.vmwcsproj /t:%BUILD_OPTION% /p:Configuration=%PROJECT_J2EE_CONFIGURATION% >>%RUNNING_FIXTURE%_build.log.txt 2<&1
  110. IF %ERRORLEVEL% NEQ 0 GOTO BUILD_EXCEPTION
  111. copy %XML_TOOL_PATH%\bin\%PROJECT_J2EE_CONFIGURATION%\xmltool.exe .
  112. copy %XML_TOOL_PATH%\nunit_transform.xslt .
  113. REM ********************************************************
  114. @echo Analyze and print results
  115. REM ********************************************************
  116. @echo on
  117. xmltool.exe --transform nunit_transform.xslt %GH_OUTPUT_XML%
  118. @echo off
  119. :FINALLY
  120. GOTO END
  121. :ENVIRONMENT_EXCEPTION
  122. @echo This test requires environment variable VMW_HOME to be defined
  123. GOTO END
  124. :BUILD_EXCEPTION
  125. @echo Error in building solutions. See %RUNNING_FIXTURE%_build.log.txt for details...
  126. REM EXIT 1
  127. GOTO END
  128. :RUN_EXCEPTION
  129. @echo Error in running fixture %RUNNING_FIXTURE%. See %RUNNING_FIXTURE%_run.log.txt for details...
  130. REM EXIT 1
  131. GOTO END
  132. :USAGE
  133. @echo Parameters: "[build|rebuild] <output_file_name_prefix> <test_fixture> <relative_Working_directory> <back_path (..\..\.....) >"
  134. GOTO END
  135. :END
  136. REM EXIT 0