Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[.NETCore] Create clean integration/specs test project in old & new format #1128

Merged
merged 37 commits into from
Apr 25, 2018

Conversation

SabotageAndi
Copy link
Contributor

resolves #1037

Types of changes

  • Bug fix (non-breaking change which fixes an issue).
  • New feature (non-breaking change which adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected).

Checklist:

  • I've added tests for my code.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added an entry to the changelog

SabotageAndi and others added 17 commits April 18, 2018 15:43
* Use current culture to retrieve double value

* Use current culture to retrieve byte value

* Use current culture to retrieve DateTime value

* Use current culture to retrieve Datetime value

* Use current culture to retrieve Decimal value

* Use current culture to retrieve float value

* Use current culture to retrieve int and short values

* Use current culture to retrieve long value

* Use current culture to retrieve sbyte value

* Use current culture to retrieve sbyte value

* Use current culture to retrieve TimeSpan value

* Use current culture to retrieve uint value

* Use current culture to retrieve ulong value

* Use current culture to retrieve UShort value

* use Thread.CurrentThread.CurrentCulture = new CultureInfo(XYZ); instead of NUnit attribute
* Initial commit to add Scenario.Description value

* Fix unittests

* Add Description Accessing and Description Parsing unit tests

* Remove extra using

* Update changelog.txt

* Update changelog.txt
@SabotageAndi SabotageAndi added this to Todo in .NET Core Support via automation Apr 24, 2018
@SabotageAndi SabotageAndi added this to the SpecFlow 3.0 milestone Apr 24, 2018
@SabotageAndi SabotageAndi moved this from Todo to In Progess in .NET Core Support Apr 24, 2018
Andreas Willich and others added 8 commits April 24, 2018 09:42
…stProjectGenerationApi

# Conflicts:
#	Installer/NuGetPackages/NuGetPackages.csproj
and mapped the "Then" step of "Should be able to execute a simple passing scenario" to this step definition
…Api' into DotNetCore_TestProjectGenerationApi
david1995 and others added 12 commits April 24, 2018 15:32
* add GitVersion

* +semver: minor

* use GitVersion for NuGet version number

* increment on every commit

* use prerelease version of GitVersionTask

* disable appveyor assembly info patching

* fix app.config & plugincompability.config

* remove packages
# Conflicts:
#	BoDi/BoDi.csproj
#	Directory.Build.props
* Fix return type of GetPlugins method to prevent loading multiple plugins

* added to changelog

* Check if plugin to add is in list of plugins for json and appconfig

* adding unit tests to check loading multiple same plugins
* Rewrite MSBuild reader to use MSBuild API
- Control usage of new implementation via SPECFLOW_USE_MSBUILDAPI to be able test both implementations side-by-side
- Update TechTalk.SpecFlow.Generator to net46 to be able use MSBuild API, and propagate changes where required across projects which depends on the TechTalk.SpecFlow.Generator
- Update MSBuild API to 15.6. This change may be not needed, but, I strongly suspect that it will play more nicely with all version of .NET Core up to not yet released .NET Core 2.1
- Add tests on the exclude folder
- Change test a bit to take into account that paths `.\filename` and `filename` appear as two items via MSBuild API, and I dont think that duplicate items is desired behavior
- Implementation of MSBuildApiProjectReader is just old resurrected implementation using MSBuild API with small changes

See #1029

* Update Generator project to use net461 target framework

* Comment out not working test projects

* Use Buildalizer for loading projects

* Remove XML project reader completely
This is justified by fact that supporting it, means reimplementing whole MSBuild logic, which is not reasonable. Also for loading plugins would be needed read PackageReferences from the projects, and this would be problematic implement correctly. Current implementation is also flawled. See #1102, and wellknown fact that Exclude property on the MSBuild items is not supported
# Conflicts:
#	Build/Versioning.targets
#	ExternalRepositories/SpecFlow.TestProjectGenerator
#	Installer/ImportGherkinParser/ImportGherkinParser.csproj
#	Installer/ImportGherkinParser/Properties/AssemblyInfo.cs
#	Installer/NuGetPackages/NuGetPackages.csproj
#	Installer/NuGetPackages/Properties/AssemblyInfo.cs
#	Installer/NuGetPackages/packages.config
#	Installer/SpecFlowBinPackage/Properties/AssemblyInfo.cs
#	Installer/SpecFlowBinPackage/SpecFlowBinPackage.csproj
#	SpecFlow.TestGenerator/SpecFlow.TestProjectGenerator/SpecFlow.TestProjectGenerator.csproj
#	TechTalk.SpecFlow.Generator/TechTalk.SpecFlow.Generator.csproj
#	TechTalk.SpecFlow.Generator/packages.config
#	TechTalk.SpecFlow.Parser.Compatibility/TechTalk.SpecFlow.Parser.Compatibility.csproj
#	TechTalk.SpecFlow.Parser.Compatibility/packages.config
#	TechTalk.SpecFlow.Parser/TechTalk.SpecFlow.Parser.csproj
#	TechTalk.SpecFlow.Parser/packages.config
#	TechTalk.SpecFlow.Reporting/Properties/AssemblyInfo.cs
#	TechTalk.SpecFlow.Reporting/TechTalk.SpecFlow.Reporting.csproj
#	TechTalk.SpecFlow.Reporting/packages.config
#	TechTalk.SpecFlow.Tools/TechTalk.SpecFlow.Tools.csproj
#	TechTalk.SpecFlow.Tools/build/Build.targets
#	TechTalk.SpecFlow.Utils/TechTalk.SpecFlow.Utils.csproj
#	TechTalk.SpecFlow/TechTalk.SpecFlow.csproj
#	TechTalk.SpecFlow/packages.config
#	Tests/DummyProjectForHoldingTheNUnit2Reference/DummyProjectForHoldingTheNUnit2Reference.csproj
#	Tests/TechTalk.SpecFlow.GeneratorTests/GeneratorTests.csproj
#	Tests/TechTalk.SpecFlow.GeneratorTests/packages.config
#	Tests/TechTalk.SpecFlow.IntegrationTests/TechTalk.SpecFlow.IntegrationTests.csproj
#	Tests/TechTalk.SpecFlow.IntegrationTests/packages.config
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/CreateInstanceHelperMethodTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/TableHelperExtensionMethods/CreateSetHelperMethodTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueComparerTests/DateTimeValueComparerTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueComparerTests/DecimalValueComparerTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueComparerTests/DoubleValueComparerTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueComparerTests/FloatValueComparerTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/ByteValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/DateTimeOffsetValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/DateTimeValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/DecimalValueRetreiverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/DoubleValueRetreiverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/FloatValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/IntValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/LongValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/NullableDateTimeOffsetValueRetriever.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/NullableDateTimeValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/NullableDecimalValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/NullableDoubleValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/NullableFloatValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/SByteValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/ShortValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/TimeSpanValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/UIntValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/ULongValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/AssistTests/ValueRetrieverTests/UShortValueRetrieverTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/Configuration/AppConfigTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/RuntimeTests.csproj
#	Tests/TechTalk.SpecFlow.RuntimeTests/TestRunnerManagerRunnerCreationTests.cs
#	Tests/TechTalk.SpecFlow.RuntimeTests/packages.config
#	Tests/TechTalk.SpecFlow.Specs/TechTalk.SpecFlow.Specs.csproj
#	Tests/TechTalk.SpecFlow.Specs/packages.config
#	appveyor.yml
# Conflicts:
#	BoDi/BoDi.csproj
#	Directory.Build.props
#	Installer/NuGetPackages/.build/build.targets
#	Installer/NuGetPackages/NuGetPackages.csproj
#	Installer/NuGetPackages/SpecFlow.CustomPlugin/SpecFlow.CustomPlugin.nuspec.props
#	Installer/NuGetPackages/SpecFlow/SpecFlow.nuspec.props
#	SpecFlow.Tools.MsBuild.Generation/build/SpecFlow.Tools.MsBuild.Generation.props
#	Tests/TechTalk.SpecFlow.RuntimeTests/StepTransformationTests.cs
@SabotageAndi SabotageAndi merged commit 020d8e3 into DotNetCore Apr 25, 2018
.NET Core Support automation moved this from In Progess to Done Apr 25, 2018
@SabotageAndi
Copy link
Contributor Author

Still PR is still open. GitHub automation closed it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

6 participants