You've already forked linux-packaging-mono
Imported Upstream version 5.2.0.175
Former-commit-id: bb0468d0f257ff100aa895eb5fe583fb5dfbf900
This commit is contained in:
parent
4bdbaf4a88
commit
966bba02bb
89
external/corert/tests/runtest.cmd
vendored
89
external/corert/tests/runtest.cmd
vendored
@@ -11,6 +11,8 @@ set CoreRT_TestRun=true
|
||||
set CoreRT_TestCompileMode=
|
||||
set CoreRT_RunCoreCLRTests=
|
||||
set CoreRT_CoreCLRTargetsFile=
|
||||
set CoreRT_TestLogFileName=testresults.xml
|
||||
set CoreRT_TestName=*
|
||||
|
||||
:ArgLoop
|
||||
if "%1" == "" goto :ArgsDone
|
||||
@@ -44,9 +46,12 @@ if /i "%1" == "/coreclr" (
|
||||
:ExtRepoTestsOk
|
||||
goto ArgLoop
|
||||
)
|
||||
if /i "%1" == "/coreclrsingletest" (set CoreRT_RunCoreCLRTests=true&set CoreRT_CoreCLRTest=%2&shift&shift&goto ArgLoop)
|
||||
if /i "%1" == "/mode" (set CoreRT_TestCompileMode=%2&shift&shift&goto ArgLoop)
|
||||
if /i "%1" == "/test" (set CoreRT_TestName=%2&shift&shift&goto ArgLoop)
|
||||
if /i "%1" == "/runtest" (set CoreRT_TestRun=%2&shift&shift&goto ArgLoop)
|
||||
if /i "%1" == "/dotnetclipath" (set CoreRT_CliDir=%2&shift&shift&goto ArgLoop)
|
||||
if /i "%1" == "/multimodule" (set CoreRT_MultiFileConfiguration=MultiModule&shift&goto ArgLoop)
|
||||
|
||||
echo Invalid command line argument: %1
|
||||
goto :Usage
|
||||
@@ -56,8 +61,12 @@ echo %ThisScript% [arch] [flavor] [/mode] [/runtest] [/coreclr ^<subset^>]
|
||||
echo arch : x64 / x86 / arm
|
||||
echo flavor : debug / release
|
||||
echo /mode : Optionally restrict to a single code generator. Specify cpp/ryujit. Default: both
|
||||
echo /test : Run a single test by folder name (ie, BasicThreading)
|
||||
echo /runtest : Should just compile or run compiled binary? Specify: true/false. Default: true.
|
||||
echo /coreclr : Download and run the CoreCLR repo tests
|
||||
echo /coreclrsingletest ^<absolute\path\to\test.exe^>
|
||||
echo : Run a single CoreCLR repo test
|
||||
echo /multimodule : Compile the framework as a .lib and link tests against it (only supports ryujit)
|
||||
echo.
|
||||
echo --- CoreCLR Subset ---
|
||||
echo Top200 : Runs broad coverage / CI validation (~200 tests).
|
||||
@@ -67,12 +76,29 @@ exit /b 2
|
||||
|
||||
:ArgsDone
|
||||
|
||||
if /i "%CoreRT_TestCompileMode%"=="jit" (
|
||||
set CoreRT_TestCompileMode=ryujit
|
||||
)
|
||||
|
||||
:: Cpp Codegen does not support multi-module compilation, so force Ryujit
|
||||
if "%CoreRT_MultiFileConfiguration%"=="MultiModule" (
|
||||
set CoreRT_TestCompileMode=ryujit
|
||||
)
|
||||
|
||||
call %CoreRT_TestRoot%testenv.cmd
|
||||
|
||||
set CoreRT_RspTemplateDir=%CoreRT_TestRoot%..\bin\obj\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%
|
||||
|
||||
set __BuildStr=%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%
|
||||
set __CoreRTTestBinDir=%CoreRT_TestRoot%..\bin\tests
|
||||
|
||||
:: Place test logs in a subfolder in multi-module mode so both single-file and
|
||||
:: multi-module test results are visible to the CI tooling
|
||||
if NOT "%CoreRT_MultiFileConfiguration%" == "" (
|
||||
set CoreRT_TestLogFileName=%CoreRT_MultiFileConfiguration%\%CoreRT_TestLogFileName%
|
||||
if not exist %__CoreRTTestBinDir%\%CoreRT_MultiFileConfiguration%\ mkdir %__CoreRTTestBinDir%\%CoreRT_MultiFileConfiguration%
|
||||
)
|
||||
|
||||
set __LogDir=%CoreRT_TestRoot%\..\bin\Logs\%__BuildStr%\tests
|
||||
|
||||
call "!VS140COMNTOOLS!\..\..\VC\vcvarsall.bat" %CoreRT_BuildArch%
|
||||
@@ -87,11 +113,17 @@ if /i "%__BuildType%"=="Debug" (
|
||||
|
||||
echo. > %__CoreRTTestBinDir%\testResults.tmp
|
||||
|
||||
rem Hacky filtering to prevent shared generics and unshared generics from mixing
|
||||
set __Filter=
|
||||
if /i "%CoreRT_MultiFileConfiguration%" == "MultiModule" (
|
||||
set __Filter=^^^| findstr /V Generics
|
||||
)
|
||||
|
||||
set /a __CppTotalTests=0
|
||||
set /a __CppPassedTests=0
|
||||
set /a __JitTotalTests=0
|
||||
set /a __JitPassedTests=0
|
||||
for /f "delims=" %%a in ('dir /s /aD /b %CoreRT_TestRoot%\src\*') do (
|
||||
for /f "delims=" %%a in ('cmd /c dir /s /aD /b %CoreRT_TestRoot%\src\%CoreRT_TestName% %__Filter%') do (
|
||||
set __SourceFolder=%%a
|
||||
set __SourceFileName=%%~na
|
||||
set __RelativePath=!__SourceFolder:%CoreRT_TestRoot%=!
|
||||
@@ -116,14 +148,14 @@ set /a __TotalTests=%__JitTotalTests%+%__CppTotalTests%
|
||||
set /a __PassedTests=%__JitPassedTests%+%__CppPassedTests%
|
||||
set /a __FailedTests=%__JitFailedTests%+%__CppFailedTests%
|
||||
|
||||
echo ^<?xml version="1.0" encoding="utf-8"?^> > %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^<assemblies^> >> %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^<assembly name="ILCompiler" total="%__TotalTests%" passed="%__PassedTests%" failed="%__FailedTests%" skipped="0"^> >> %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^<collection total="%__TotalTests%" passed="%__PassedTests%" failed="%__FailedTests%" skipped="0"^> >> %__CoreRTTestBinDir%\testResults.xml
|
||||
type %__CoreRTTestBinDir%\testResults.tmp >> %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^</collection^> >> %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^</assembly^> >> %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^</assemblies^> >> %__CoreRTTestBinDir%\testResults.xml
|
||||
echo ^<?xml version="1.0" encoding="utf-8"?^> > %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
echo ^<assemblies^> >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
echo ^<assembly name="ILCompiler" total="%__TotalTests%" passed="%__PassedTests%" failed="%__FailedTests%" skipped="0"^> >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
echo ^<collection total="%__TotalTests%" passed="%__PassedTests%" failed="%__FailedTests%" skipped="0"^> >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
type %__CoreRTTestBinDir%\testResults.tmp >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
echo ^</collection^> >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
echo ^</assembly^> >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
echo ^</assemblies^> >> %__CoreRTTestBinDir%\%CoreRT_TestLogFileName%
|
||||
|
||||
echo.
|
||||
set __JitStatusPassed=1
|
||||
@@ -179,11 +211,15 @@ goto :eof
|
||||
if /i "%CoreRT_BuildType%" == "debug" (
|
||||
set extraArgs=!extraArgs! /p:UseDebugCrt=true
|
||||
)
|
||||
) else (
|
||||
if "%CoreRT_MultiFileConfiguration%" == "MultiModule" (
|
||||
set extraArgs=!extraArgs! "/p:IlcMultiModule=true"
|
||||
)
|
||||
)
|
||||
|
||||
echo msbuild /m /ConsoleLoggerParameters:ForceNoAlign "/p:IlcPath=%CoreRT_ToolchainDir%" "/p:Configuration=%CoreRT_BuildType%" "/p:RepoLocalBuild=true" !extraArgs! !__SourceFile!.csproj
|
||||
echo msbuild /m /ConsoleLoggerParameters:ForceNoAlign "/p:IlcPath=%CoreRT_ToolchainDir%" "/p:Configuration=%CoreRT_BuildType%" "/p:Platform=%CoreRT_BuildArch%" "/p:RepoLocalBuild=true" "/p:FrameworkLibPath=%~dp0..\bin\Product\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\lib" "/p:FrameworkObjPath=%~dp0..\bin\obj\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\Framework" !extraArgs! !__SourceFile!.csproj
|
||||
echo.
|
||||
msbuild /m /ConsoleLoggerParameters:ForceNoAlign "/p:IlcPath=%CoreRT_ToolchainDir%" "/p:Configuration=%CoreRT_BuildType%" "/p:RepoLocalBuild=true" !extraArgs! !__SourceFile!.csproj
|
||||
msbuild /m /ConsoleLoggerParameters:ForceNoAlign "/p:IlcPath=%CoreRT_ToolchainDir%" "/p:Configuration=%CoreRT_BuildType%" "/p:Platform=%CoreRT_BuildArch%" "/p:RepoLocalBuild=true" "/p:FrameworkLibPath=%~dp0..\bin\Product\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\lib" "/p:FrameworkObjPath=%~dp0..\bin\obj\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\Framework" !extraArgs! !__SourceFile!.csproj
|
||||
endlocal
|
||||
|
||||
set __SavedErrorLevel=%ErrorLevel%
|
||||
@@ -192,7 +228,7 @@ goto :eof
|
||||
if "%__SavedErrorLevel%"=="0" (
|
||||
echo.
|
||||
echo Running test !__SourceFileName!
|
||||
call !__SourceFile!.cmd !__SourceFolder!\bin\%CoreRT_BuildType%\native !__SourceFileName!.exe
|
||||
call !__SourceFile!.cmd !__SourceFolder!\bin\%CoreRT_BuildType%\%CoreRT_BuildArch%\native !__SourceFileName!.exe
|
||||
set __SavedErrorLevel=!ErrorLevel!
|
||||
)
|
||||
|
||||
@@ -264,19 +300,42 @@ goto :eof
|
||||
|
||||
if not exist "%CoreRT_TestExtRepo%" ((call :Fail "%CoreRT_TestExtRepo% does not exist") & exit /b 1)
|
||||
|
||||
if "%CoreRT_MultiFileConfiguration%" == "MultiModule" (
|
||||
set IlcMultiModule=true
|
||||
REM Pre-compile shared framework assembly
|
||||
echo Compiling framework library
|
||||
echo msbuild /m /ConsoleLoggerParameters:ForceNoAlign "/p:IlcPath=%CoreRT_ToolchainDir%" "/p:Configuration=%CoreRT_BuildType%" "/p:Platform=%CoreRT_BuildArch%" "/p:RepoLocalBuild=true" "/p:FrameworkLibPath=%CoreRT_TestRoot%..\bin\Product\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\lib" "/p:FrameworkObjPath=%~dp0..\bin\obj\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\Framework" /t:CreateLib %CoreRT_TestRoot%\..\src\BuildIntegration\BuildFrameworkNativeObjects.proj
|
||||
msbuild /m /ConsoleLoggerParameters:ForceNoAlign "/p:IlcPath=%CoreRT_ToolchainDir%" "/p:Configuration=%CoreRT_BuildType%" "/p:Platform=%CoreRT_BuildArch%" "/p:RepoLocalBuild=true" "/p:FrameworkLibPath=%CoreRT_TestRoot%..\bin\Product\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\lib" "/p:FrameworkObjPath=%~dp0..\bin\obj\%CoreRT_BuildOS%.%CoreRT_BuildArch%.%CoreRT_BuildType%\Framework" /t:CreateLib %CoreRT_TestRoot%\..\src\BuildIntegration\BuildFrameworkNativeObjects.proj
|
||||
)
|
||||
|
||||
echo.
|
||||
set CLRCustomTestLauncher=%CoreRT_TestRoot%\CoreCLR\build-and-run-test.cmd
|
||||
set XunitTestBinBase=!CoreRT_TestExtRepo!
|
||||
set CORE_ROOT=%CoreRT_TestRoot%\..\Tools\dotnetcli\shared\Microsoft.NETCore.App\1.0.0
|
||||
echo CORE_ROOT IS NOW %CORE_ROOT%
|
||||
pushd %CoreRT_TestRoot%\CoreCLR\runtest
|
||||
|
||||
|
||||
msbuild "/p:RepoLocalBuild=true" src\TestWrappersConfig\XUnitTooling.depproj
|
||||
if errorlevel 1 (
|
||||
exit /b 1
|
||||
)
|
||||
echo runtest.cmd %CoreRT_BuildArch% %CoreRT_BuildType% %CoreCLRExcludeText% %CoreRT_CoreCLRTargetsFile% LogsDir %__LogDir%
|
||||
call runtest.cmd %CoreRT_BuildArch% %CoreRT_BuildType% %CoreCLRExcludeText% %CoreRT_CoreCLRTargetsFile% LogsDir %__LogDir%
|
||||
|
||||
if not "%CoreRT_CoreCLRTest%" == "" (
|
||||
if not exist "%CoreRT_CoreCLRTest%" (
|
||||
echo Target test file not found: %CoreRT_CoreCLRTest%
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
for %%i in (%CoreRT_CoreCLRTest%) do (
|
||||
set TestFolderName=%%~dpi
|
||||
set TestFileName=%%~nxi
|
||||
)
|
||||
call %CoreRT_TestRoot%\CoreCLR\build-and-run-test.cmd !TestFolderName! !TestFileName!
|
||||
) else (
|
||||
echo runtest.cmd %CoreRT_BuildArch% %CoreRT_BuildType% %CoreCLRExcludeText% %CoreRT_CoreCLRTargetsFile% LogsDir %__LogDir%
|
||||
call runtest.cmd %CoreRT_BuildArch% %CoreRT_BuildType% %CoreCLRExcludeText% %CoreRT_CoreCLRTargetsFile% LogsDir %__LogDir%
|
||||
)
|
||||
|
||||
set __SavedErrorLevel=%ErrorLevel%
|
||||
popd
|
||||
exit /b %__SavedErrorLevel%
|
||||
|
||||
Reference in New Issue
Block a user