Skip to content

Commit

Permalink
Add SpecFlow.Tools.MsBuild.Generation package (#971)
Browse files Browse the repository at this point in the history
* always import MSBuild tasks, so that they can be easier used in other packages
* add SpecFlow.Tools.MsBuild.Generation package
* add TechTalk.SpecFlow.props file
  • Loading branch information
SabotageAndi committed Nov 22, 2017
1 parent f3fb347 commit 9d4580d
Show file tree
Hide file tree
Showing 13 changed files with 65 additions and 11 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Expand Up @@ -44,4 +44,6 @@ TechTalk.SpecFlow.Tools/app.config
TechTalk.SpecFlow.Tools/plugincompability.config
TechTalk.SpecFlow.sln.GhostDoc.xml
Features.Generated/
GitExtensions.settings.backup
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
6 changes: 6 additions & 0 deletions Installer/NuGetPackages/.build/build.targets
Expand Up @@ -19,11 +19,17 @@

<Message Importance="High" Text="NugetVersion: $(NugetVersion)" />

<Copy SourceFiles="$(MSBuildThisFileDirectory)\..\..\..\TechTalk.SpecFlow.Tools\MsBuild\TechTalk.SpecFlow.targets" DestinationFiles="$(TargetDir)SpecFlow.Tools.MsBuild.Generation\build\SpecFlow.Tools.MsBuild.Generation.targets" OverwriteReadOnlyFiles="true" />
<Copy SourceFiles="$(MSBuildThisFileDirectory)\..\..\..\TechTalk.SpecFlow.Tools\MsBuild\TechTalk.SpecFlow.props" DestinationFiles="$(TargetDir)SpecFlow.Tools.MsBuild.Generation\build\SpecFlow.Tools.MsBuild.Generation.props" OverwriteReadOnlyFiles="true" />
<XmlPoke XmlInputPath="$(TargetDir)SpecFlow.Tools.MsBuild.Generation\build\SpecFlow.Tools.MsBuild.Generation.targets" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/developer/msbuild/2003' /&gt;" Query="//ng:Import/@Project" Value="SpecFlow.Tools.MsBuild.Generation.props" />


<XmlPoke Condition="'$(SpecFlowPackageVersion)' != ''" XmlInputPath="$(TargetDir)SpecFlow.CustomPlugin\SpecFlow.CustomPlugin.nuspec" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' /&gt;" Query="//ng:dependency[@id='SpecFlow']/@version" Value="[$(SpecFlowPackageVersion)]" />
<XmlPoke Condition="'$(SpecFlowPackageVersion)' != ''" XmlInputPath="$(TargetDir)SpecFlow.MsTest\SpecFlow.MsTest.nuspec" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' /&gt;" Query="//ng:dependency[@id='SpecFlow']/@version" Value="[$(SpecFlowPackageVersion)]" />
<XmlPoke Condition="'$(SpecFlowPackageVersion)' != ''" XmlInputPath="$(TargetDir)SpecFlow.NUnit\SpecFlow.NUnit.nuspec" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' /&gt;" Query="//ng:dependency[@id='SpecFlow']/@version" Value="[$(SpecFlowPackageVersion)]" />
<XmlPoke Condition="'$(SpecFlowPackageVersion)' != ''" XmlInputPath="$(TargetDir)SpecFlow.xUnit\SpecFlow.xUnit.nuspec" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' /&gt;" Query="//ng:dependency[@id='SpecFlow']/@version" Value="[$(SpecFlowPackageVersion)]" />
<XmlPoke Condition="'$(SpecFlowPackageVersion)' != ''" XmlInputPath="$(TargetDir)SpecFlow.NUnit.Runners\SpecFlow.NUnit.Runners.nuspec" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' /&gt;" Query="//ng:dependency[@id='SpecFlow.NUnit']/@version" Value="[$(SpecFlowPackageVersion)]" />
<XmlPoke Condition="'$(SpecFlowPackageVersion)' != ''" XmlInputPath="$(TargetDir)SpecFlow.Tools.MsBuild.Generation\SpecFlow.Tools.MsBuild.Generation.nuspec" Namespaces="&lt;Namespace Prefix='ng' Uri='http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' /&gt;" Query="//ng:dependency[@id='SpecFlow']/@version" Value="[$(SpecFlowPackageVersion)]" />
</Target>

</Project>
4 changes: 4 additions & 0 deletions Installer/NuGetPackages/NuGetPackages.csproj
Expand Up @@ -48,6 +48,9 @@
<None Include=".build\build.targets" />
<None Include="Properties\build.props" />
<None Include="SpecFlow.CustomPlugin\SpecFlow.CustomPlugin.nuspec.props" />
<None Include="SpecFlow.Tools.MsBuild.Generation\build\SpecFlow.Tools.MsBuild.Generation.props" />
<None Include="SpecFlow.Tools.MsBuild.Generation\build\SpecFlow.Tools.MsBuild.Generation.targets" />
<None Include="SpecFlow.Tools.MsBuild.Generation\SpecFlow.Tools.MsBuild.Generation.nuspec" />
<None Include="SpecFlow.MsTest\SpecFlow.MsTest.nuspec.props" />
<None Include="SpecFlow.NUnit.Runners\SpecFlow.NUnit.Runners.nuspec.props" />
<None Include="SpecFlow.NUnit\SpecFlow.NUnit.nuspec.props" />
Expand All @@ -72,6 +75,7 @@
<SubType>Designer</SubType>
</None>
<None Include="SpecFlow.xUnit\SpecFlow.xUnit.nuspec" />
<None Include="SpecFlow\build\SpecFlow.targets" />
<None Include="SpecFlow\SpecFlow.nuspec" />
<None Include="SpecFlow\SpecFlow.nuspec.props" />
<None Include="SpecFlow.xUnit\App.config.transform" />
Expand Down
@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>SpecFlow.Tools.MsBuild.Generation</id>
<version>1.0.0-alpha</version>
<title>SpecFlow.Tools.MsBuild.Generation</title>
<authors>TechTalk</authors>
<owners>TechTalk</owners>
<description>Package to enable the code-behind file generation during build time http://specflow.org/documentation/Generate-Tests-from-MsBuild/</description>
<summary>Package to enable the code-behind file generation during build time http://specflow.org/documentation/Generate-Tests-from-MsBuild/</summary>
<language>en-US</language>
<projectUrl>http://www.specflow.org</projectUrl>
<licenseUrl>http://go.specflow.org/license</licenseUrl>
<iconUrl>http://go.specflow.org/specflow-nuget-icon</iconUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<tags>specflow msbuild</tags>
<dependencies>
<dependency id="SpecFlow" version="[1.0.0-alpha]" />
</dependencies>
</metadata>
</package>
6 changes: 6 additions & 0 deletions Installer/NuGetPackages/SpecFlow/build/SpecFlow.targets
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<Import Project="$(MSBuildThisFileDirectory)\..\tools\TechTalk.SpecFlow.tasks" />

</Project>
12 changes: 12 additions & 0 deletions TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.props
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>

<ShowTrace Condition="'$(ShowTrace)'==''">false</ShowTrace>
<OverwriteReadOnlyFiles Condition="'$(OverwriteReadOnlyFiles)'==''">false</OverwriteReadOnlyFiles>
<ForceGeneration Condition="'$(ForceGeneration)'==''">false</ForceGeneration>
<VerboseOutput Condition="'$(VerboseOutput)'==''">false</VerboseOutput>

<_SpecFlowPropsImported Condition="'$(_SpecFlowPropsImported)'==''">true</_SpecFlowPropsImported>
</PropertyGroup>
</Project>
10 changes: 1 addition & 9 deletions TechTalk.SpecFlow.Tools/MsBuild/TechTalk.SpecFlow.targets
@@ -1,22 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<Import Project="TechTalk.SpecFlow.tasks"/>

<!-- this setting is to workaround the bug in VS (does not detect changes during the pre-build event)
see: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=423670&wa=wsignin1.0
-->
<PropertyGroup>
<UseHostCompilerIfAvailable>false</UseHostCompilerIfAvailable>
</PropertyGroup>

<PropertyGroup>
<ShowTrace Condition="'$(ShowTrace)'==''">false</ShowTrace>

<OverwriteReadOnlyFiles Condition="'$(OverwriteReadOnlyFiles)'==''">false</OverwriteReadOnlyFiles>
<ForceGeneration Condition="'$(ForceGeneration)'==''">false</ForceGeneration>
<VerboseOutput Condition="'$(VerboseOutput)'==''">false</VerboseOutput>
</PropertyGroup>
<Import Project="TechTalk.SpecFlow.props" Condition="'$(_SpecFlowPropsImported)'==''"/>

<PropertyGroup Condition="'$(BuildServerMode)' == ''">
<BuildServerMode Condition="'$(BuildingInsideVisualStudio)'=='true'">false</BuildServerMode>
Expand Down
4 changes: 4 additions & 0 deletions TechTalk.SpecFlow.Tools/TechTalk.SpecFlow.Tools.csproj
Expand Up @@ -104,6 +104,10 @@
<None Include="app.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="MsBuild\TechTalk.SpecFlow.props">
<SubType>Designer</SubType>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="plugincompability.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
Expand Down
Expand Up @@ -209,6 +209,7 @@
<PropertyGroup>
<SpecFlowTasksPath>..\..\TechTalk.SpecFlow.Tools\$(OutDir)\specflow.exe</SpecFlowTasksPath>
</PropertyGroup>
<Import Project="..\..\TechTalk.SpecFlow.Tools\MsBuild\TechTalk.SpecFlow.tasks" />
<Import Project="..\..\TechTalk.SpecFlow.Tools\MsBuild\TechTalk.SpecFlow.targets" />
<PropertyGroup>
<PostBuildEvent>$(SolutionDir)\Tests\PostBuild.bat "$(TargetDir)" "$(SolutionDir)"</PostBuildEvent>
Expand Down
Expand Up @@ -70,6 +70,7 @@
<PropertyGroup>
<VerboseOutput>true</VerboseOutput>
</PropertyGroup>
<Import Project="{SpecFlowRoot}\Tools\TechTalk.SpecFlow.tasks" />
<Import Project="{SpecFlowRoot}\Tools\TechTalk.SpecFlow.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
Expand Down
Expand Up @@ -52,6 +52,7 @@
<PropertyGroup>
<VerboseOutput>true</VerboseOutput>
</PropertyGroup>
<Import Project="{SpecFlowRoot}\Tools\TechTalk.SpecFlow.tasks" />
<Import Project="{SpecFlowRoot}\Tools\TechTalk.SpecFlow.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
Expand Down
Expand Up @@ -67,5 +67,6 @@
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Import Project="{SpecFlowRoot}\Tools\TechTalk.SpecFlow.tasks" />
<Import Project="{SpecFlowRoot}\Tools\TechTalk.SpecFlow.targets" />
</Project>
5 changes: 4 additions & 1 deletion Tests/TechTalk.SpecFlow.Specs/TechTalk.SpecFlow.Specs.csproj
Expand Up @@ -196,7 +196,9 @@
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Drivers\Templates\TestProjectFile.vbproj" />
<EmbeddedResource Include="Drivers\Templates\TestProjectFile.vbproj">
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Drivers\Templates\BindingClass.vb" />
Expand All @@ -206,6 +208,7 @@
<PropertyGroup>
<SpecFlowTasksPath>..\..\TechTalk.SpecFlow.Tools\$(OutDir)\specflow.exe</SpecFlowTasksPath>
</PropertyGroup>
<Import Project="..\..\TechTalk.SpecFlow.Tools\MsBuild\TechTalk.SpecFlow.tasks" />
<Import Project="..\..\TechTalk.SpecFlow.Tools\MsBuild\TechTalk.SpecFlow.targets" />
<PropertyGroup>
<PostBuildEvent>$(SolutionDir)\Tests\PostBuild.bat "$(TargetDir)" "$(SolutionDir)"</PostBuildEvent>
Expand Down

0 comments on commit 9d4580d

Please sign in to comment.