From 194c7e54d7803fe16757675bee672ea8b702bcad Mon Sep 17 00:00:00 2001 From: Chris Holt Date: Wed, 26 Apr 2017 16:49:17 -0400 Subject: [PATCH] Add support for NUnit3 --params parameter --- src/app/FakeLib/UnitTest/NUnit/NUnit3.fs | 6 ++++++ src/test/Test.FAKECore/NUnit3Specs.cs | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/app/FakeLib/UnitTest/NUnit/NUnit3.fs b/src/app/FakeLib/UnitTest/NUnit/NUnit3.fs index 59fa0dc8a1e..7f60ddf00db 100644 --- a/src/app/FakeLib/UnitTest/NUnit/NUnit3.fs +++ b/src/app/FakeLib/UnitTest/NUnit/NUnit3.fs @@ -197,6 +197,9 @@ type NUnit3Params = /// Controls the trace logs NUnit3 will output, defaults to Off TraceLevel : NUnit3TraceLevel + + /// A test parameter specified in the form name=value. Multiple parameters may be specified, separated by semicolons + Params : string } /// The [NUnit3Params](fake-testing-nunit3-nunit3params.html) default parameters. @@ -223,6 +226,7 @@ type NUnit3Params = /// - `TeamCity` - `false` /// - `ErrorLevel` - `Error` /// - `TraceLevel` - `Default` (By default NUnit3 sets this to off internally) +/// - `Params` - `""` /// ## Defaults let NUnit3Defaults = { @@ -249,6 +253,7 @@ let NUnit3Defaults = Labels = LabelsLevel.Default ErrorLevel = NUnit3ErrorLevel.Error TraceLevel= NUnit3TraceLevel.Default + Params = "" } /// Tries to detect the working directory as specified in the parameters or via TeamCity settings @@ -289,6 +294,7 @@ let buildNUnit3Args parameters assemblies = |> appendResultString parameters.ResultSpecs |> appendIfTrue parameters.ShadowCopy "--shadowcopy" |> appendIfTrue parameters.TeamCity "--teamcity" + |> appendIfNotNullOrEmpty parameters.Params "--params=" |> appendFileNamesIfNotNull assemblies |> toText diff --git a/src/test/Test.FAKECore/NUnit3Specs.cs b/src/test/Test.FAKECore/NUnit3Specs.cs index 194d948c147..e813668dd42 100644 --- a/src/test/Test.FAKECore/NUnit3Specs.cs +++ b/src/test/Test.FAKECore/NUnit3Specs.cs @@ -61,7 +61,8 @@ internal class When_using_non_default_trace_parameter NUnit3.NUnit3Defaults.TeamCity, NUnit3.NUnit3Defaults.Labels, NUnit3.NUnit3Defaults.ErrorLevel, - NUnit3.NUnit3TraceLevel.Verbose); + NUnit3.NUnit3TraceLevel.Verbose, + NUnit3.NUnit3Defaults.Params); }; It should_include_the_expected_trace_argument = () =>