run-tests.test.bat 6.4 KB

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