From 8c2f865a01b7ed1da533856b78e25d7951b2b928 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Wed, 1 Aug 2018 13:38:57 +0200 Subject: [PATCH 01/13] fix unintended line break in TechTalk.SpecFlow.tasks, app.config --- .../MsBuild/TechTalk.SpecFlow.tasks | 6 +++--- Tests/TechTalk.SpecFlow.IntegrationTests/App.config | 12 ++++++++---- Tests/TechTalk.SpecFlow.Specs/App.config | 6 ++++-- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.tasks b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.tasks index c652e133d..8da5dac85 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.tasks +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.tasks @@ -1,5 +1,6 @@  + specflow.exe @@ -8,10 +9,9 @@ <__SpecFlowTasksFullPath>$(SpecFlowTasksPath) - <__SpecFlowTasksFullPath Condition="Exists('$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)')" - >$(MSBuildProjectDirectory)\$(SpecFlowTasksPath) + <__SpecFlowTasksFullPath Condition="Exists('$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)')">$(MSBuildProjectDirectory)\$(SpecFlowTasksPath) - + diff --git a/Tests/TechTalk.SpecFlow.IntegrationTests/App.config b/Tests/TechTalk.SpecFlow.IntegrationTests/App.config index dfe1e2c2e..1b1435f2d 100644 --- a/Tests/TechTalk.SpecFlow.IntegrationTests/App.config +++ b/Tests/TechTalk.SpecFlow.IntegrationTests/App.config @@ -3,7 +3,7 @@
- + @@ -11,11 +11,15 @@ - + - - + + + + + + diff --git a/Tests/TechTalk.SpecFlow.Specs/App.config b/Tests/TechTalk.SpecFlow.Specs/App.config index c95086c7b..2b37f245b 100644 --- a/Tests/TechTalk.SpecFlow.Specs/App.config +++ b/Tests/TechTalk.SpecFlow.Specs/App.config @@ -10,5 +10,7 @@ - - \ No newline at end of file + + + + From 7163d066b0941f25560fcf433374966d8a2a9ef8 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Wed, 1 Aug 2018 18:52:02 +0200 Subject: [PATCH 02/13] Extend MsBuildProjectReader to support detection of sdk style projects if sdk.props and sdk.targets are manually imported (advanced scenarios) --- TechTalk.SpecFlow.Generator/Project/MsBuildProjectReader.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TechTalk.SpecFlow.Generator/Project/MsBuildProjectReader.cs b/TechTalk.SpecFlow.Generator/Project/MsBuildProjectReader.cs index 7421aeabc..e7c463b18 100644 --- a/TechTalk.SpecFlow.Generator/Project/MsBuildProjectReader.cs +++ b/TechTalk.SpecFlow.Generator/Project/MsBuildProjectReader.cs @@ -123,7 +123,8 @@ private SpecFlowProject LoadFeatureFiles(SpecFlowProject specFlowProject, XDocum private bool IsNewProjectSystem(XDocument xDocument) { - return xDocument.Root.Attribute("Sdk") != null; + // net.sdk way of detection based on: https://stackoverflow.com/questions/45943939/how-do-i-override-the-beforebuild-msbuild-task-in-a-vs-2017-net-standard-c-sh + return xDocument.Root.Attribute("Sdk") != null || xDocument.Root.Elements("Import").Where(e => e.HasAttributes).Attributes("Sdk").Any(); } public static SpecFlowProject LoadSpecFlowProjectFromMsBuild(string projectFilePath) From 8e8040e77708d5f0b3c0bef7c2a5414f6389d0a4 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Wed, 1 Aug 2018 18:53:02 +0200 Subject: [PATCH 03/13] adding integration-test project for net.sdk project support --- TechTalk.SpecFlow.sln | 9 ++++ .../App.config | 15 ++++++ .../Bindings/DoNothingBinding.cs | 21 +++++++++ .../CodeBehindFileGenerationTests.cs | 18 +++++++ .../Features/dummy.feature | 7 +++ ...Flow.MsBuildNetSdk.IntegrationTests.csproj | 47 +++++++++++++++++++ 6 files changed, 117 insertions(+) create mode 100644 Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/App.config create mode 100644 Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Bindings/DoNothingBinding.cs create mode 100644 Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/CodeBehindFileGenerationTests.cs create mode 100644 Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Features/dummy.feature create mode 100644 Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.csproj diff --git a/TechTalk.SpecFlow.sln b/TechTalk.SpecFlow.sln index 94ae07e78..1c7225998 100644 --- a/TechTalk.SpecFlow.sln +++ b/TechTalk.SpecFlow.sln @@ -71,6 +71,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Licenses", "Licenses", "{D7 Licenses\System.ValueTuple-LICENSE-MIT.txt = Licenses\System.ValueTuple-LICENSE-MIT.txt EndProjectSection EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests", "Tests\TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests\TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.csproj", "{02A08F81-B90F-4EB3-9C30-CE7447DE2012}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -173,6 +175,12 @@ Global {FA04B445-D04C-4075-9EB0-4D0A70E47FC4}.Release|Any CPU.Build.0 = Release|Any CPU {FA04B445-D04C-4075-9EB0-4D0A70E47FC4}.VS2010IntegrationTest|Any CPU.ActiveCfg = Debug|Any CPU {FA04B445-D04C-4075-9EB0-4D0A70E47FC4}.VS2010IntegrationTest|Any CPU.Build.0 = Debug|Any CPU + {02A08F81-B90F-4EB3-9C30-CE7447DE2012}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {02A08F81-B90F-4EB3-9C30-CE7447DE2012}.Debug|Any CPU.Build.0 = Debug|Any CPU + {02A08F81-B90F-4EB3-9C30-CE7447DE2012}.Release|Any CPU.ActiveCfg = Release|Any CPU + {02A08F81-B90F-4EB3-9C30-CE7447DE2012}.Release|Any CPU.Build.0 = Release|Any CPU + {02A08F81-B90F-4EB3-9C30-CE7447DE2012}.VS2010IntegrationTest|Any CPU.ActiveCfg = Debug|Any CPU + {02A08F81-B90F-4EB3-9C30-CE7447DE2012}.VS2010IntegrationTest|Any CPU.Build.0 = Debug|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -189,6 +197,7 @@ Global {D87E7021-4926-4F5A-AC81-92AFC575FB7E} = {577A0375-1436-446C-802B-3C75C8CEF94F} {DBEEB615-5991-46BC-B274-1516BD0F3D91} = {A10B5CD6-38EC-4D7E-9D1C-2EBA8017E437} {FA04B445-D04C-4075-9EB0-4D0A70E47FC4} = {A10B5CD6-38EC-4D7E-9D1C-2EBA8017E437} + {02A08F81-B90F-4EB3-9C30-CE7447DE2012} = {A10B5CD6-38EC-4D7E-9D1C-2EBA8017E437} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {6C32F919-B9E8-48E8-BD8D-566E54B9A27D} diff --git a/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/App.config b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/App.config new file mode 100644 index 000000000..38ad724cf --- /dev/null +++ b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/App.config @@ -0,0 +1,15 @@ + + + +
+ + + + + + + + + + + diff --git a/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Bindings/DoNothingBinding.cs b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Bindings/DoNothingBinding.cs new file mode 100644 index 000000000..ffde9fd09 --- /dev/null +++ b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Bindings/DoNothingBinding.cs @@ -0,0 +1,21 @@ +namespace TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.Features +{ + [Binding] + public class DoNothingBinding + { + [Given(".*"), When(".*"), Then(".*")] + public void EmptyStep() + { + } + + [Given(".*"), When(".*"), Then(".*")] + public void EmptyStep(string multiLineStringParam) + { + } + + [Given(".*"), When(".*"), Then(".*")] + public void EmptyStep(Table tableParam) + { + } + } +} \ No newline at end of file diff --git a/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/CodeBehindFileGenerationTests.cs b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/CodeBehindFileGenerationTests.cs new file mode 100644 index 000000000..77c913c10 --- /dev/null +++ b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/CodeBehindFileGenerationTests.cs @@ -0,0 +1,18 @@ +using System.Reflection; +using NUnit.Framework; +using TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.Features; + +namespace TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests +{ + [TestFixture] + public class CodeBehindFileGenerationTests + { + [Test] + public void TestIfCodeBehindFilesWasGeneratedAndCompiled() + { + var assemblyHoldingThisClass = Assembly.GetExecutingAssembly(); + var typeOfGeneratedFeatureFile = assemblyHoldingThisClass.GetType(nameof(DummyFeatureFileToTestMSBuildNetsdkCodebehindFileGenerationFeature)); + Assert.IsNotNull(typeOfGeneratedFeatureFile); + } + } +} diff --git a/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Features/dummy.feature b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Features/dummy.feature new file mode 100644 index 000000000..2f1cf31c0 --- /dev/null +++ b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Features/dummy.feature @@ -0,0 +1,7 @@ +Feature: Dummy feature file to test MSBuild netsdk codebehind file generation + +Scenario: Dummy scenario + Given I have a net.sdk style project + When the project is build + Then msbuild integration will generate code behind files + And nest generated codebehind files under corresponding feature file diff --git a/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.csproj b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.csproj new file mode 100644 index 000000000..a7ea67079 --- /dev/null +++ b/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests.csproj @@ -0,0 +1,47 @@ + + + + + + + net462 + + + + ..\..\TechTalk.SpecFlow.Tools\bin\$(Configuration)\specflow.exe + + + + + + + + + + + + + + + + Always + + + + + + + + + true + + + + + + + + From fe94f997418df8b6772f99536d193e0c0985d9fd Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Wed, 1 Aug 2018 18:53:44 +0200 Subject: [PATCH 04/13] Extended MSBuild integration to support net.sdk projects --- .../MsBuild/TechTalk.SpecFlow.props | 18 +++++- .../MsBuild/TechTalk.SpecFlow.targets | 58 ++++++++++++++++++- 2 files changed, 73 insertions(+), 3 deletions(-) diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props index dfa159201..d2e6bed8e 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props @@ -14,8 +14,6 @@ false false - false - false false false @@ -23,6 +21,22 @@ <_SpecFlowPropsImported Condition="'$(_SpecFlowPropsImported)'==''">true + + + + + false + + + false + + %(RelativeDir)%(Filename).feature.cs diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets index 262bf035c..5ded6990e 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets @@ -6,6 +6,15 @@ false true + + + <_SpecFlow_EnableDefaultCompileItems Condition="'$(SpecFlow_EnableDefaultCompileItems)' == '' And '$(UsingMicrosoftNETSdk)' == 'true'">true + <_SpecFlow_EnableDefaultCompileItems Condition="'$(SpecFlow_EnableDefaultCompileItems)' == 'true' And '$(UsingMicrosoftNETSdk)' == 'true'">true @@ -25,6 +34,21 @@ + + + + + + + true @@ -36,6 +60,8 @@ Inputs="@(SpecFlowFeatureFiles)" Outputs="@(SpecFlowFeatureFiles->'%(CodeBehindFile)')"> + + - + + + + + + + + + + + + + + + + + + + @@ -70,4 +125,5 @@ + From f8d732fba01a69a0f6909b755785da27e22b0122 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 07:20:50 +0200 Subject: [PATCH 05/13] add compiler warning to inform user of codebehind files which don't have any corresponding feature file --- TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets index 5ded6990e..e42f70b58 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets @@ -49,6 +49,10 @@ + + + + true @@ -100,8 +104,6 @@ - - From 355a454bb9ad50905887a5bc068897b6d88a9cf3 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 08:27:41 +0200 Subject: [PATCH 06/13] Update changelog.txt --- changelog.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/changelog.txt b/changelog.txt index e85bab5af..b3a3fe603 100644 --- a/changelog.txt +++ b/changelog.txt @@ -5,9 +5,10 @@ New Features: + Allow marking steps as Obsolete and have a configurable behavior for it https://github.com/techtalk/SpecFlow/pull/1140 + IGherkinParser and IGherkinParserFactory interfaces added to support Gherkin Parser pluggability https://github.com/techtalk/SpecFlow/pull/1143 + Assist: remove accents from column headers and property names when comparing objects to a table https://github.com/techtalk/SpecFlow/pull/1096 -+ MSBuild Generation: Experimental support for deleting code-behind files on clean and rebuild + Added NUnit current TestContext scenario container registration. See https://github.com/techtalk/SpecFlow/issues/936 + Array & List support for strings and enums when instantiating class from Specflow table https://github.com/techtalk/SpecFlow/pull/1018 ++ MSBuild: Experimental support for deleting code-behind files on clean and rebuild when MSBuild https://github.com/techtalk/SpecFlow/pull/1167, https://github.com/techtalk/SpecFlow/pull/1208 ++ MSBuild: Experimental support for Net.SDK project system, only for targeting desktop framework, .net core is supported and won't work Fixes: + Expose ScenarioInfo.Description parameter to get from context https://github.com/techtalk/SpecFlow/pull/1078 From e82629c69b230fecab7dbe67900dc4596678d152 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 08:29:00 +0200 Subject: [PATCH 07/13] Update changelog to include link to PR --- changelog.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog.txt b/changelog.txt index b3a3fe603..3fb5862f6 100644 --- a/changelog.txt +++ b/changelog.txt @@ -8,7 +8,7 @@ New Features: + Added NUnit current TestContext scenario container registration. See https://github.com/techtalk/SpecFlow/issues/936 + Array & List support for strings and enums when instantiating class from Specflow table https://github.com/techtalk/SpecFlow/pull/1018 + MSBuild: Experimental support for deleting code-behind files on clean and rebuild when MSBuild https://github.com/techtalk/SpecFlow/pull/1167, https://github.com/techtalk/SpecFlow/pull/1208 -+ MSBuild: Experimental support for Net.SDK project system, only for targeting desktop framework, .net core is supported and won't work ++ MSBuild: Experimental support for Net.SDK project system, only for targeting desktop framework, .net core is supported and won't work https://github.com/techtalk/SpecFlow/pull/1223 Fixes: + Expose ScenarioInfo.Description parameter to get from context https://github.com/techtalk/SpecFlow/pull/1078 From bdbaf3e83dc2f03d21f86c1ac88bfee17248ca8f Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 18:47:13 +0200 Subject: [PATCH 08/13] removed unused references and added dummy target for NuGetPackages.csproj to prevent build error --- Installer/NuGetPackages/.build/build.targets | 2 +- Installer/NuGetPackages/NuGetPackages.csproj | 8 -------- .../TechTalk.SpecFlow.IntegrationTests.csproj | 2 -- 3 files changed, 1 insertion(+), 11 deletions(-) diff --git a/Installer/NuGetPackages/.build/build.targets b/Installer/NuGetPackages/.build/build.targets index 217a74b7c..517c6eeb1 100644 --- a/Installer/NuGetPackages/.build/build.targets +++ b/Installer/NuGetPackages/.build/build.targets @@ -8,7 +8,7 @@ - + diff --git a/Installer/NuGetPackages/NuGetPackages.csproj b/Installer/NuGetPackages/NuGetPackages.csproj index 947c78fda..f76416a5d 100644 --- a/Installer/NuGetPackages/NuGetPackages.csproj +++ b/Installer/NuGetPackages/NuGetPackages.csproj @@ -35,14 +35,6 @@ 4 false - - - - - - - - diff --git a/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj b/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj index 3ee428783..583224982 100644 --- a/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj +++ b/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj @@ -54,8 +54,6 @@ - - From f7ee85f8351fd91d9d649e6bb6c6640c0899e926 Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 18:48:00 +0200 Subject: [PATCH 09/13] update .gitignore to ignore codebehind file of net.sdk integration test project --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index c1ebc36b8..f633c0ca0 100644 --- a/.gitignore +++ b/.gitignore @@ -380,3 +380,4 @@ Features.Generated/ GitExtensions.settings.backup /Installer/NuGetPackages/SpecFlow.Tools.MsBuild.Generation/build/SpecFlow.Tools.MsBuild.Generation.targets /Installer/NuGetPackages/SpecFlow.Tools.MsBuild.Generation/build/SpecFlow.Tools.MsBuild.Generation.props +/Tests/TechTalk.SpecFlow.MsBuildNetSdk.IntegrationTests/Features/dummy.feature.cs From aabfafe5ab9b7463426c0eb32134033777131cbd Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 18:48:46 +0200 Subject: [PATCH 10/13] update Specs and IntegrationTests project to use a more current version of Microsoft.Build to support parsing of itemgroup remove and update --- .../TechTalk.SpecFlow.IntegrationTests.csproj | 20 +++++++++++++++++- .../packages.config | 14 +++++++++++++ .../TechTalk.SpecFlow.Specs.csproj | 21 +++++++++++++++++-- Tests/TechTalk.SpecFlow.Specs/packages.config | 14 +++++++++++++ 4 files changed, 66 insertions(+), 3 deletions(-) diff --git a/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj b/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj index 583224982..a9e5293aa 100644 --- a/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj +++ b/Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj @@ -46,13 +46,31 @@ ..\..\packages\FluentAssertions.4.19.0\lib\net45\FluentAssertions.Core.dll True - + + ..\..\packages\Microsoft.Build.15.3.409\lib\net46\Microsoft.Build.dll + + + ..\..\packages\Microsoft.Build.Framework.15.3.409\lib\net46\Microsoft.Build.Framework.dll + + + ..\..\packages\Microsoft.Build.Utilities.Core.15.3.409\lib\net46\Microsoft.Build.Utilities.Core.dll + ..\..\packages\NUnit.3.2.1\lib\net45\nunit.framework.dll True + + ..\..\packages\System.Collections.Immutable.1.3.1\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll + + + + ..\..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + + + ..\..\packages\System.Threading.Thread.4.0.0\lib\net46\System.Threading.Thread.dll + diff --git a/Tests/TechTalk.SpecFlow.IntegrationTests/packages.config b/Tests/TechTalk.SpecFlow.IntegrationTests/packages.config index ace693faa..7b6cc15e6 100644 --- a/Tests/TechTalk.SpecFlow.IntegrationTests/packages.config +++ b/Tests/TechTalk.SpecFlow.IntegrationTests/packages.config @@ -2,9 +2,23 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Tests/TechTalk.SpecFlow.Specs/TechTalk.SpecFlow.Specs.csproj b/Tests/TechTalk.SpecFlow.Specs/TechTalk.SpecFlow.Specs.csproj index f3fd9360e..af5c6bffa 100644 --- a/Tests/TechTalk.SpecFlow.Specs/TechTalk.SpecFlow.Specs.csproj +++ b/Tests/TechTalk.SpecFlow.Specs/TechTalk.SpecFlow.Specs.csproj @@ -52,8 +52,15 @@ ..\..\packages\Gherkin.5.1.0\lib\net45\Gherkin.dll - - + + ..\..\packages\Microsoft.Build.15.3.409\lib\net46\Microsoft.Build.dll + + + ..\..\packages\Microsoft.Build.Framework.15.3.409\lib\net46\Microsoft.Build.Framework.dll + + + ..\..\packages\Microsoft.Build.Utilities.Core.15.3.409\lib\net46\Microsoft.Build.Utilities.Core.dll + ..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll @@ -65,8 +72,18 @@ ..\..\packages\NUnit.ConsoleRunner.3.2.1\tools\nunit3-console.exe + + ..\..\packages\System.Collections.Immutable.1.3.1\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll + + + + ..\..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + + + ..\..\packages\System.Threading.Thread.4.0.0\lib\net46\System.Threading.Thread.dll + diff --git a/Tests/TechTalk.SpecFlow.Specs/packages.config b/Tests/TechTalk.SpecFlow.Specs/packages.config index d624494c0..45d78e4bd 100644 --- a/Tests/TechTalk.SpecFlow.Specs/packages.config +++ b/Tests/TechTalk.SpecFlow.Specs/packages.config @@ -3,6 +3,9 @@ + + + @@ -13,6 +16,17 @@ + + + + + + + + + + + From b227f5d6198a40f9816699b40e86bc89dc6f428e Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 21:01:34 +0200 Subject: [PATCH 11/13] try to fix problem with itemgroup metadata update on all items --- .../MsBuild/TechTalk.SpecFlow.targets | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets index e42f70b58..59d65e572 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets @@ -53,12 +53,14 @@ + true + + - + - - - + + + + Condition="'%(Compile.Identity)' == '@(SpecFlowFeatureFiles->'%(CodeBehindFile)')'" /> + From d656735f576b7a77f6ce6439db622c2983c406fc Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 21:40:18 +0200 Subject: [PATCH 12/13] enable warning for codebehind files without corresponding feature file only if net.sdk style projects will be used. currently, many projects are moving codebehind files into a different location using AfterUpdateFeatureFilesInProject Target --- TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props | 3 ++- TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props index d2e6bed8e..a4945f8fd 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props @@ -34,7 +34,8 @@ - false + false + $(SpecFlow_EnableDefaultCompileItems) diff --git a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets index 59d65e572..b1218001b 100644 --- a/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets +++ b/TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets @@ -49,7 +49,8 @@ - + From 91608504d567d1a3805622848eb1ebfdb5fcfb2e Mon Sep 17 00:00:00 2001 From: Daniel Sack Date: Thu, 2 Aug 2018 21:40:48 +0200 Subject: [PATCH 13/13] add additional shim targets for nuget packages project to prevent silent fail of build --- Installer/NuGetPackages/.build/build.targets | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Installer/NuGetPackages/.build/build.targets b/Installer/NuGetPackages/.build/build.targets index 517c6eeb1..a7a426e75 100644 --- a/Installer/NuGetPackages/.build/build.targets +++ b/Installer/NuGetPackages/.build/build.targets @@ -9,6 +9,8 @@ + +