diff --git a/.gitignore b/.gitignore index 1bd35450673..d2ab9630afb 100644 --- a/.gitignore +++ b/.gitignore @@ -104,3 +104,5 @@ tests/fsharp/typecheck/sigs/neg94-pre.dll times /tests/fsharpqa/testenv/bin/System.ValueTuple.dll source_link.json +/.vs +/VSRelease/net40/bin diff --git a/build.cmd b/build.cmd index 6486e0a1e0f..17cd00c39da 100644 --- a/build.cmd +++ b/build.cmd @@ -525,8 +525,8 @@ if '%BUILD_NET40%' == '1' ( call src\update.cmd %BUILD_CONFIG% -ngen ) -@echo set NUNITPATH=packages\NUnit.Console.3.0.0\tools\ -set NUNITPATH=packages\NUnit.Console.3.0.0\tools\ +@echo set NUNITPATH=packages\NUnit.ConsoleRunner.3.5.0\tools\ +set NUNITPATH=packages\NUnit.ConsoleRunner.3.5.0\tools\ if not exist %NUNITPATH% echo Error: Could not find %NUNITPATH% && goto :failure @echo xcopy "%NUNITPATH%*.*" "%~dp0tests\fsharpqa\testenv\bin\nunit\*.*" /S /Q /Y @@ -541,20 +541,20 @@ if '%BUILD_CORECLR%' == '1' ( %_nugetexe% restore .\tests\fsharp\project.json -PackagesDirectory packages echo Deploy x86 version of compiler and dependencies, ready for testing - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x86 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\win7-x86 --copyCompiler:yes --v:quiet - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x86 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\win7-x86 --copyCompiler:no --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x86 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\win7-x86 --copyCompiler:yes --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x86 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\win7-x86 --copyCompiler:no --v:quiet echo Deploy x64 version of compiler, ready for testing - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\win7-x64 --copyCompiler:yes --v:quiet - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\win7-x64 --copyCompiler:no --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\win7-x64 --copyCompiler:yes --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/win7-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\win7-x64 --copyCompiler:no --v:quiet echo Deploy linux version of built compiler, ready for testing - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/ubuntu.14.04-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\ubuntu.14.04-x64 --copyCompiler:yes --v:quiet - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/ubuntu.14.04-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\ubuntu.14.04-x64 --copyCompiler:no --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/ubuntu.14.04-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\ubuntu.14.04-x64 --copyCompiler:yes --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/ubuntu.14.04-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\ubuntu.14.04-x64 --copyCompiler:no --v:quiet echo Deploy osx version of built compiler, ready for testing - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/osx.10.10-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\osx.10.10-x64 --copyCompiler:yes --v:quiet - %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/osx.10.10-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\osx.10.10-x64 --copyCompiler:no --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/osx.10.10-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\fsc\osx.10.10-x64 --copyCompiler:yes --v:quiet + %_fsiexe% --exec tests\fsharpqa\testenv\src\DeployProj\DeployProj.fsx --targetPlatformName:.NETStandard,Version=v1.6/osx.10.10-x64 --projectJsonLock:%~dp0tests\fsharp\project.lock.json --packagesDir:%USERPROFILE%\.nuget\packages --fsharpCore:%BUILD_CONFIG%\coreclr\bin\FSharp.Core.dll --output:tests\testbin\%BUILD_CONFIG%\coreclr\osx.10.10-x64 --copyCompiler:no --v:quiet ) @@ -596,7 +596,7 @@ setlocal enableDelayedExpansion set NUNITPATH=%~dp0tests\fsharpqa\testenv\bin\nunit\ -set NUNIT3_CONSOLE=%~dp0packages\NUnit.Console.3.0.0\tools\nunit3-console.exe +set NUNIT3_CONSOLE=%~dp0packages\NUnit.ConsoleRunner.3.5.0\tools\nunit3-console.exe set link_exe=%~dp0packages\VisualCppTools.14.0.24519-Pre\lib\native\bin\link.exe if not exist "%link_exe%" ( echo Error: failed to find '%link_exe%' use nuget to restore the VisualCppTools package @@ -622,12 +622,12 @@ set XMLFILE=%RESULTSDIR%\test-net40-fsharp-results.xml set OUTPUTFILE=%RESULTSDIR%\test-net40-fsharp-output.log set ERRORFILE=%RESULTSDIR%\test-net40-fsharp-errors.log -set command="%NUNIT3_CONSOLE%" --verbose "%FSCBINPATH%\FSharp.Tests.FSharp.dll" --framework:V4.0 --work:"%FSCBINPATH%" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --result:"!XMLFILE!;format=nunit2" +set command="%NUNIT3_CONSOLE%" --verbose "%FSCBINPATH%\FSharp.Tests.FSharp.dll" --framework:V4.0 --work:"%FSCBINPATH%" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --result:"!XMLFILE!;format=nunit3" if '%TEST_NET40_FSHARP_SUITE%' == '1' ( - rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) - rem Note: each setlocal must be matched by an executed endlocal - setlocal disableDelayedExpansion + rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) + rem Note: each setlocal must be matched by an executed endlocal + setlocal disableDelayedExpansion echo %command% %WHERE_ARG_NUNIT% %command% %WHERE_ARG_NUNIT% endlocal @@ -739,17 +739,17 @@ REM ---------------- net40-compilerunit ----------------------- set XMLFILE=%RESULTSDIR%\test-net40-compilerunit-results.xml set OUTPUTFILE=%RESULTSDIR%\test-net40-compilerunit-output.log set ERRORFILE=%RESULTSDIR%\test-net40-compilerunit-errors.log -set command="%NUNIT3_CONSOLE%" --verbose --framework:V4.0 --result:"!XMLFILE!;format=nunit2" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --work:"%FSCBINPATH%" "%FSCBINPATH%\..\..\net40\bin\FSharp.Compiler.Unittests.dll" +set command="%NUNIT3_CONSOLE%" --verbose --framework:V4.0 --result:"!XMLFILE!;format=nunit3" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --work:"%FSCBINPATH%" "%FSCBINPATH%\..\..\net40\bin\FSharp.Compiler.Unittests.dll" if '%TEST_NET40_COMPILERUNIT_SUITE%' == '1' ( - rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) - rem Note: each setlocal must be matched by an executed endlocal - setlocal disableDelayedExpansion + rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) + rem Note: each setlocal must be matched by an executed endlocal + setlocal disableDelayedExpansion echo %command% %WHERE_ARG_NUNIT% %command% %WHERE_ARG_NUNIT% endlocal - call :UPLOAD_TEST_RESULTS "!XMLFILE!" "!OUTPUTFILE!" "!ERRORFILE!" + call :UPLOAD_TEST_RESULTS "!XMLFILE!" "!OUTPUTFILE!" "!ERRORFILE!" if NOT '!saved_errorlevel!' == '0' ( type "!OUTPUTFILE!" type "!ERRORFILE!" @@ -763,7 +763,7 @@ REM ---------------- net40-coreunit ----------------------- set XMLFILE=%RESULTSDIR%\test-net40-coreunit-results.xml set OUTPUTFILE=%RESULTSDIR%\test-net40-coreunit-output.log set ERRORFILE=%RESULTSDIR%\test-net40-coreunit-errors.log -set command="%NUNIT3_CONSOLE%" --verbose --framework:V4.0 --result:"!XMLFILE!;format=nunit2" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --work:"%FSCBINPATH%" "%FSCBINPATH%\FSharp.Core.Unittests.dll" +set command="%NUNIT3_CONSOLE%" --verbose --framework:V4.0 --result:"!XMLFILE!;format=nunit3" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --work:"%FSCBINPATH%" "%FSCBINPATH%\FSharp.Core.Unittests.dll" if '%TEST_NET40_COREUNIT_SUITE%' == '1' ( rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) @@ -787,7 +787,7 @@ REM ---------------- portable-coreunit ----------------------- set XMLFILE=%RESULTSDIR%\test-portable-coreunit-results.xml set OUTPUTFILE=%RESULTSDIR%\test-portable-coreunit-output.log set ERRORFILE=%RESULTSDIR%\test-portable-coreunit-errors.log -set command="%NUNIT3_CONSOLE%" /framework:V4.0 /result="!XMLFILE!;format=nunit2" /output="!OUTPUTFILE!" /err="!ERRORFILE!" /work="%FSCBINPATH%" "%FSCBINPATH%\..\..\portable7\bin\FSharp.Core.Unittests.dll" "%FSCBINPATH%\..\..\portable47\bin\FSharp.Core.Unittests.dll" "%FSCBINPATH%\..\..\portable78\bin\FSharp.Core.Unittests.dll" "%FSCBINPATH%\..\..\portable259\bin\FSharp.Core.Unittests.dll" +set command="%NUNIT3_CONSOLE%" /framework:V4.0 /result="!XMLFILE!;format=nunit3" /output="!OUTPUTFILE!" /err="!ERRORFILE!" /work="%FSCBINPATH%" "%FSCBINPATH%\..\..\portable7\bin\FSharp.Core.Unittests.dll" "%FSCBINPATH%\..\..\portable47\bin\FSharp.Core.Unittests.dll" "%FSCBINPATH%\..\..\portable78\bin\FSharp.Core.Unittests.dll" "%FSCBINPATH%\..\..\portable259\bin\FSharp.Core.Unittests.dll" if '%TEST_PORTABLE_COREUNIT_SUITE%' == '1' ( rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) @@ -844,7 +844,7 @@ set XMLFILE=%RESULTSDIR%\test-coreclr-fsharp-results.xml set OUTPUTFILE=%RESULTSDIR%\test-coreclr-fsharp-output.log set ERRORFILE=%RESULTSDIR%\test-coreclr-fsharp-errors.log -set command="%NUNIT3_CONSOLE%" --verbose "%FSCBINPATH%\..\..\coreclr\bin\FSharp.Tests.FSharp.dll" --framework:V4.0 --work:"%FSCBINPATH%" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --result:"!XMLFILE!;format=nunit2" +set command="%NUNIT3_CONSOLE%" --verbose "%FSCBINPATH%\..\..\coreclr\bin\FSharp.Tests.FSharp.dll" --framework:V4.0 --work:"%FSCBINPATH%" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --result:"!XMLFILE!;format=nunit3" if '%TEST_CORECLR_FSHARP_SUITE%' == '1' ( rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) @@ -870,7 +870,7 @@ set XMLFILE=%RESULTSDIR%\test-vs-ideunit-results.xml set OUTPUTFILE=%RESULTSDIR%\test-vs-ideunit-output.log set ERRORFILE=%RESULTSDIR%\test-vs-ideunit-errors.log -set command="%NUNIT3_CONSOLE%" --verbose --x86 --framework:V4.0 --result:"!XMLFILE!;format=nunit2" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --work:"%FSCBINPATH%" --workers=1 --agents=1 --full "%FSCBINPATH%\VisualFSharp.Unittests.dll" +set command="%NUNIT3_CONSOLE%" --verbose --x86 --framework:V4.0 --result:"!XMLFILE!;format=nunit3" --output:"!OUTPUTFILE!" --err:"!ERRORFILE!" --work:"%FSCBINPATH%" --workers=1 --agents=1 --full "%FSCBINPATH%\VisualFSharp.Unittests.dll" if '%TEST_VS_IDEUNIT_SUITE%' == '1' ( rem Turn off delayed expansion when manipulating variables where a ! may appear in the argument text (CMD batch file oddity) rem Note: each setlocal must be matched by an executed endlocal diff --git a/packages.config b/packages.config index c2e734072bb..dd84372923b 100644 --- a/packages.config +++ b/packages.config @@ -20,10 +20,9 @@ - - - - + + + diff --git a/src/FSharpSource.targets b/src/FSharpSource.targets index dc955f4adfb..c5e8fae1e14 100644 --- a/src/FSharpSource.targets +++ b/src/FSharpSource.targets @@ -102,10 +102,10 @@ - 3.0.0 - 3.0.5797.27534 + 3.5.0 + 3.5.0.0 $(FSharpSourcesRoot)\..\packages\NUnit.$(NUnitVersion)\lib\net45 - $(FSharpSourcesRoot)\..\packages\NUnit.Console.$(NUnitVersion)\tools\ + $(FSharpSourcesRoot)\..\packages\NUnit.ConsoleRunner\$(NUnitVersion)\tools\ 2.0.3 2.0.3.0 $(FSharpSourcesRoot)\..\packages\FsCheck.$(FsCheckVersion)\lib\ @@ -185,6 +185,7 @@ v5.0 false + .NETStandard,Version=v1.6 true @@ -541,8 +542,8 @@ - - + + diff --git a/src/fsharp/FSharp.Core.Unittests/FSharp.Core.Unittests.fsproj b/src/fsharp/FSharp.Core.Unittests/FSharp.Core.Unittests.fsproj index 2dfb034adac..fac4e6fa3a2 100644 --- a/src/fsharp/FSharp.Core.Unittests/FSharp.Core.Unittests.fsproj +++ b/src/fsharp/FSharp.Core.Unittests/FSharp.Core.Unittests.fsproj @@ -69,15 +69,15 @@ - + true True - ..\..\..\packages\NUnit.3.0.0\lib\portable-net45+win8+wp8+wpa81+Xamarin.Mac+MonoAndroid10+MonoTouch10+Xamarin.iOS10\nunit.framework.dll + ..\..\..\packages\NUnit.3.5.0\lib\portable-net45+win8+wp8+wpa81+Xamarin.Mac+MonoAndroid10+MonoTouch10+Xamarin.iOS10\nunit.framework.dll - + true True - ..\..\..\packages\NUnitLite.3.0.0\lib\portable-net45+win8+wp8+wpa81+Xamarin.Mac\nunitlite.dll + ..\..\..\packages\NUnitLite.3.5.0\lib\portable-net45+win8+wp8+wpa81+Xamarin.Mac\nunitlite.dll diff --git a/src/fsharp/FSharp.Core.Unittests/Program.fs b/src/fsharp/FSharp.Core.Unittests/Program.fs index b5cb7404af3..28ff2aa8434 100644 --- a/src/fsharp/FSharp.Core.Unittests/Program.fs +++ b/src/fsharp/FSharp.Core.Unittests/Program.fs @@ -3,9 +3,10 @@ module Program open System open System.Reflection open NUnitLite +open NUnit.Common type HelperType() = inherit System.Object() [] let main argv = - AutoRun().Execute(typeof.GetTypeInfo().Assembly, Console.Out, Console.In, argv) + AutoRun(typeof.GetTypeInfo().Assembly).Execute(argv, new ExtendedTextWrapper(Console.Out), Console.In) diff --git a/tests/fsharp/FSharp.Tests.fsproj b/tests/fsharp/FSharp.Tests.fsproj index c20d501b852..e20e619885b 100644 --- a/tests/fsharp/FSharp.Tests.fsproj +++ b/tests/fsharp/FSharp.Tests.fsproj @@ -76,7 +76,7 @@ - ..\..\packages\NUnit.3.0.0\lib\net45\nunit.framework.dll + ..\..\packages\NUnit.3.5.0\lib\net45\nunit.framework.dll True diff --git a/tests/fsharpqa/Source/FSharpQA.Tests.fsproj b/tests/fsharpqa/Source/FSharpQA.Tests.fsproj index 691ac57ccaa..036e07e9e7c 100644 --- a/tests/fsharpqa/Source/FSharpQA.Tests.fsproj +++ b/tests/fsharpqa/Source/FSharpQA.Tests.fsproj @@ -48,7 +48,7 @@ - ..\..\..\packages\NUnit.3.0.0\lib\net45\nunit.framework.dll + ..\..\..\packages\NUnit.3.5.0\lib\net45\nunit.framework.dll True