Skip to content

Conversation

@dsyme
Copy link
Contributor

@dsyme dsyme commented Oct 17, 2016

The script "RunTests.cmd" is not worth much - it basically gets in the way. Moving this stuff into build.cmd seems a better way to make progress on simplifying the build/test process and gradually reducing the use of batch files.

As an aside, I have these ultimate aims in this cleanup work

  • Get this repo compiling on Linux using .NET Core (initially also requiring Mono at build-time for some tooling and build automation), including Travis or Jenkins CI for this
  • Get the "fsharp" suite testing for .NET Core using the .fs drivers, so we can finally eliminate all the batch files under tests\fsharp
  • Simplify the whole process of doing build and test

@KevinRansom
Copy link
Contributor

KevinRansom commented Oct 17, 2016

please don't .... I use the script. It may be easier when doing a full pass to not have the script. But the script is usefull when running a subset of tests.

@dsyme
Copy link
Contributor Author

dsyme commented Oct 17, 2016

@KevinRansom I can make it so that you can do whatever you used to do via direct invocations of build.cmd (we can add a "nobuild" option if needed).

@dsyme
Copy link
Contributor Author

dsyme commented Oct 17, 2016

@KevinRansom I'll make sure you can do the following from build.cmd

  • individual test suites (fsharp, fsharpqa etc)
  • pass test tags (as before)
  • suppress the "build" part of build.cmd

@dsyme dsyme changed the title remove RunTests.cmd cleanup and simplify test runner logic, remove RunTests.cmd Oct 18, 2016
@dsyme
Copy link
Contributor Author

dsyme commented Oct 18, 2016

@KevinRansom I've extended this with a major cleanup of the test runner scripts under tests\fsharp (mainly with a view to working out how we're going to run these on CoreCLR and cross-platform)

The logic of RunTests.cmd is now available directly from build.cmd, e.g.

Build:

build.cmd net40 

Build then test (auto-chooses all applicable tests):

build.cmd coreclr test 

Build then test a particular suite:

build.cmd net40 test-net40-fsharpqa

Build then run tests marked with Conformance tag:

build.cmd test include Conformance 

Run tests excluding those marked with Slow tag (skip the build step)

build.cmd nobuild test exclude Slow

@dsyme
Copy link
Contributor Author

dsyme commented Oct 19, 2016

Unrelated failure:

 [00:43:45] 1) Failed : FSharp.Core.Unittests.FSharp_Core.Microsoft_FSharp_Control.AsyncModule.AwaitWaitHandle.Timeout
[00:43:45]   Delta is too big 78
[00:43:45]   Expected: True
[00:43:45]   But was:  False
[00:43:45] at FSharp.Core.Unittests.FSharp_Core.Microsoft_FSharp_Control.AsyncModule.AwaitWaitHandle.Timeout() in C:\projects\visualfsharp-3dtit\src\fsharp\FSharp.Core.Unittests\FSharp.Core\Microsoft.FSharp.Control\AsyncModule.fs:line 240

@dsyme
Copy link
Contributor Author

dsyme commented Oct 19, 2016

@KevinRansom I've merged this. Please let me know if the new exclude and include options for build.cmd are not sufficient for your purposes? Thanks

@dsyme dsyme merged commit 07fd501 into dotnet:master Oct 19, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants