Updating SpecFlow library

--HG--
branch : 1.x
This commit is contained in:
Sebastien Ros
2011-11-29 10:06:13 -08:00
parent 737af93b31
commit 7d2ac4b560
30 changed files with 902 additions and 479 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+65 -58
View File
@@ -1,58 +1,65 @@
<?xml version="1.0" encoding="utf-8" ?> <?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="TechTalk.SpecFlow.tasks"/> <Import Project="TechTalk.SpecFlow.tasks"/>
<!-- this setting is to workaround the bug in VS (does not detect changes during the pre-build event) <!-- 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 see: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=423670&wa=wsignin1.0
--> -->
<PropertyGroup> <PropertyGroup>
<UseHostCompilerIfAvailable>false</UseHostCompilerIfAvailable> <UseHostCompilerIfAvailable>false</UseHostCompilerIfAvailable>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<ShowTrace Condition="'$(ShowTrace)'==''">false</ShowTrace> <ShowTrace Condition="'$(ShowTrace)'==''">false</ShowTrace>
<OverwriteReadOnlyFiles Condition="'$(OverwriteReadOnlyFiles)'==''">false</OverwriteReadOnlyFiles> <OverwriteReadOnlyFiles Condition="'$(OverwriteReadOnlyFiles)'==''">false</OverwriteReadOnlyFiles>
<ForceGeneration Condition="'$(ForceGeneration)'==''">false</ForceGeneration> <ForceGeneration Condition="'$(ForceGeneration)'==''">false</ForceGeneration>
<VerboseOutput Condition="'$(VerboseOutput)'==''">false</VerboseOutput> <VerboseOutput Condition="'$(VerboseOutput)'==''">false</VerboseOutput>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(BuildServerMode)' == ''"> <PropertyGroup Condition="'$(BuildServerMode)' == ''">
<BuildServerMode Condition="'$(BuildingInsideVisualStudio)'=='true'">false</BuildServerMode> <BuildServerMode Condition="'$(BuildingInsideVisualStudio)'=='true'">false</BuildServerMode>
<BuildServerMode Condition="'$(BuildingInsideVisualStudio)'!='true'">true</BuildServerMode> <BuildServerMode Condition="'$(BuildingInsideVisualStudio)'!='true'">true</BuildServerMode>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<BuildDependsOn> <BuildDependsOn>
UpdateFeatureFilesInProject; BeforeUpdateFeatureFilesInProject;
$(BuildDependsOn) UpdateFeatureFilesInProject;
</BuildDependsOn> AfterUpdateFeatureFilesInProject;
<RebuildDependsOn> $(BuildDependsOn)
SwitchToForceGenerate; </BuildDependsOn>
$(RebuildDependsOn) <RebuildDependsOn>
</RebuildDependsOn> SwitchToForceGenerate;
</PropertyGroup> $(RebuildDependsOn)
</RebuildDependsOn>
<Target Name="SwitchToForceGenerate"> </PropertyGroup>
<PropertyGroup>
<ForceGeneration>true</ForceGeneration> <Target Name="SwitchToForceGenerate">
<OnlyUpdateIfChanged>true</OnlyUpdateIfChanged> <PropertyGroup>
</PropertyGroup> <ForceGeneration>true</ForceGeneration>
</Target> <OnlyUpdateIfChanged>true</OnlyUpdateIfChanged>
</PropertyGroup>
<Target Name="UpdateFeatureFilesInProject"> </Target>
<GenerateAll
ShowTrace="$(ShowTrace)" <Target Name="UpdateFeatureFilesInProject" DependsOnTargets="BeforeUpdateFeatureFilesInProject">
<GenerateAll
BuildServerMode="$(BuildServerMode)" ShowTrace="$(ShowTrace)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
BuildServerMode="$(BuildServerMode)"
ProjectPath="$(MSBuildProjectFullPath)" OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
ForceGeneration="$(ForceGeneration)"
VerboseOutput="$(VerboseOutput)" ProjectPath="$(MSBuildProjectFullPath)"
/> ForceGeneration="$(ForceGeneration)"
VerboseOutput="$(VerboseOutput)">
</Target> <Output TaskParameter="GeneratedFiles" ItemName="SpecFlowGeneratedFiles" />
</GenerateAll>
</Project> </Target>
<Target Name="BeforeUpdateFeatureFilesInProject">
</Target>
<Target Name="AfterUpdateFeatureFilesInProject" DependsOnTargets="UpdateFeatureFilesInProject">
</Target>
</Project>
+17 -17
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8" ?> <?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<SpecFlowTasksPath Condition="'$(SpecFlowTasksPath)'==''">specflow.exe</SpecFlowTasksPath> <SpecFlowTasksPath Condition="'$(SpecFlowTasksPath)'==''">specflow.exe</SpecFlowTasksPath>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<!-- handle absolute / targets-relative tasks path --> <!-- handle absolute / targets-relative tasks path -->
<__SpecFlowTasksFullPath>$(SpecFlowTasksPath)</__SpecFlowTasksFullPath> <__SpecFlowTasksFullPath>$(SpecFlowTasksPath)</__SpecFlowTasksFullPath>
<!-- handle relative tasks path --> <!-- handle relative tasks path -->
<__SpecFlowTasksFullPath Condition="Exists('$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)')" <__SpecFlowTasksFullPath Condition="Exists('$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)')"
>$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)</__SpecFlowTasksFullPath> >$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)</__SpecFlowTasksFullPath>
</PropertyGroup> </PropertyGroup>
<UsingTask TaskName="TechTalk.SpecFlow.Tools.MsBuild.GenerateAll" AssemblyFile="$(__SpecFlowTasksFullPath)" /> <UsingTask TaskName="TechTalk.SpecFlow.Tools.MsBuild.GenerateAll" AssemblyFile="$(__SpecFlowTasksFullPath)" />
</Project> </Project>
+362 -175
View File
@@ -1,175 +1,362 @@
1.4.0 - 2010/10/07 1.8.1 - 20111/10/25
Breaking changes: Fixed issues:
+ The generator has been improved to provide source code language. Because of this, SpecFlow test generated + Run & debug scenarios from the feature file context menu does not work with ReSharper 6 (Issue 138)
with this version will be incompatible with older runtimes. + VS2010 step autocomplete: New steps form external project are not found unless IDE is restarted (Issue 88, by Stanislaw Wozniak)
+ VS2010 step autocomplete: Duplicated steps
New features:
+ Scoped Step Definitions: you can scope step definitions (bindings) to tags, features and scenarios. Scope filter 1.8.0 - 2011/10/17
can be applied to a class or a method with the [StepScope] attribute.
See examples in Tests/FeatureTests/ScopedSteps/ScopedSteps.feature and Tests/FeatureTests/ScopedSteps/ScopedStepsBindings.cs Breaking changes:
(Thanks to Jose Simas for the contribution.) + Classes used for context injection must have a single public constructor with maximum parameter count (so far the first constructor was used).
+ Adding binding-culture to App.config. If set, this culture is used during execution of steps. + After step hook is was not invoked when step definition failed so far. Now it is invoked even in case of a failure.
+ VB-Step-Definition Skeleton Provider: For VB-projects, the suggested step skeletons are generated in VB.
+ Merging strongly typed context accessors from Darren Cauthon's SpecFlowAssist New features:
+ Merging table/row extension methods from Darren Cauthon's SpecFlowAssist + Async testing support for Windows Phone 7 (Issue 132, by Jeff Simons)
Add a using statement for the namespace TechTalk.SpecFlow.Assist to use the extension methods. + Support for MbUnit v3. Use unit test provider name "mbunit.3". (Issue 133, by Raytheon)
See also Darren's youtube tutorial: http://bit.ly/aY4VOd + SpecFlow framework classes can be used as a dependency for context injection.
+ Diagnostic tracing: VS2010 integration can display trace messages to the Output window + Custom extensions for the runtime can be specified in the config file (specflow/runtime/dependencies).
if tracing is enabled. Tracing can be enabled by setting the environment variable SPECFLOW_TRACE + Better customization possibilities with plugins.
to either "all" or to the comma separated list of individual SpecFlow traing categories (currently + [StepScope] attribute can also scope hooks (event bindings) (Issue 95)
only the category "EditorParser" is supported). + [StepScope] has been renamed to [Scope]. [StepScope] is kept with obsolete warning.
+ VS2010: Run & debug scenarios from the feature file context menu and solution explorer nodes (feature file, folder, project).
Fixed issues: + VS2010: Use infix word prefix matching for step completion.
+ Better error reporting for wrong Gherkin files (multiple errors displayed, detect duplicate scenario names) + VS2010: Regenerate feature files from project context menu.
+ Visual Studio 2010 editor slows down after editing a feature file for a longer time (Issue 9) + VS2010: Go to step definition command in feature file context menu.
+ MsBuild generator can output generated file paths (GeneratedFiles property). The file list is populated to the MsBuild item
1.3.5.2 - 2010/08/11 @(SpecFlowGeneratedFiles) by the TechTalk.SpecFlow.targets.
+ MsBuild: TechTalk.SpecFlow.targets provides overrideable BeforeUpdateFeatureFilesInProject and AfterUpdateFeatureFilesInProject targets.
Fixed issues: + Cucumber harmonization
+ Sorry, we're ironing out our deploy strategy with the new Mono/MonoDevelop integration. We didn't + Allow using [Before]/[After] attributes as synonyms of [BeforeScenario]/[AfterScenario]
change the version in the MonoDevelop Add-In XML file. + Allow using [StepDefinition] attribute that matches to given, when or then steps
+ Leading '@' sign can be specified for hooks and [Scope] attribute
1.3.5.1 - 2010/08/11
Fixed issues:
New features: + Instances created for context injection are disposed after scenario execution (Issue 22)
+ Support for hosting add-in on http://addins.monodevelop.com + Error when opening feature file in VS2008 if VS2008 syntax coloring was enabled.
+ Silverlight: make possible to access SilverlightTest instance (Issue 126, by Matt Ellis)
1.3.5 - 2010/08/11 + Silverlight: apply feature tags to the test class instead of the methods (Issue 126, by Matt Ellis)
+ SpecFlowContext.TryGetValue does not evaluate Func<T> factory methods (Issue 127, by Matt Ellis)
New features: + StepArgumentTransformation cannot be used recursively
+ Support for Mono (v2.6.7) & MonoDevelop (v2.4) by Dale Ragan + VS2010 locks generator folder
+ After step hook is not invoked when step definition failed.
Fixed issues: + Missing XML comment warnings caused by the generated test class (Issue 121)
+ Generating code randomly for the wrong testing engine + VS2010: Goto step definition misdiagnoses Given-But as a Then-But (Issue 134, by Raytheon)
+ Test class generation problem for Russian feature files + VS2010: 'Go To Definition' does not work with partial classes. (Issue 53, by Raytheon)
+ Fix tag support for Silverlight + AfterTestRun-Hook does not trigger when running in NUnitGui or NUnitConsole. To fix this, you need to add the NUnit addin from
https://raw.github.com/techtalk/SpecFlow/master/Installer/NUnitNuGetPackage/SpecFlowNUnitExtension.cs to the project, or use
1.3.4 - 2010/07/28 the SpecFlow.NUnit combined NuGet package that does this automatically.
Fixed issues: 1.7.1 - 2011/08/19
+ Installation fails if Visual Studio 2010 is not installed
+ VS2010: Background section is not colored properly Fixed issues:
+ Test execution report displays the feature description instead of the title (Issue 118)
1.3.3 - 2010/07/19 + Incomprehensible error message when Scenario-description is empty (Issue 117)
+ Assist helpers do not support Singles (Issue 114, by Joe Parkin)
New features: + Assist helpers do not support unsigned integers (Issue 115, by mdellanoce)
+ Support for MsTest report generation + The test class is not generated as UTF-8, so some accented characters might be displayed incorrectly. (Issue 112)
usage: specflow mstestexecutionreport projectFile [/testResult:value] [/xsltFile:value] [/out:value] + Fix step definition report broken by v1.7. (Issue 111, by Chris Roff)
projectFile Visual Studio Project File containing specs + Intellisense breaks when typing keyword 'E' (And in pt-BR) followed by a space (Issue 109)
[/testResult:value] Test Result file generated by MsTest. Defaults to TestResult.trx + Intellisense completition removes the non-first words of keywords (e.g. for "Gegeben sei") (Issue 65)
[/out:value] Generated Output File. Defaults to TestResult.html + Support table delimiter escaping for table formatting (Issue 99)
[/xsltFile:value] Xslt file to use, defaults to built-in stylesheet if not provided + Fixed enum property name match (Issue 119)
+ Visual Studio 2010 editor support: + Added Assist support for byte, float, long, ulong, sbyte, ushort, single. With nullables. (Issue 120)
- syntax coloring with configurable colors ("Gherkin ...")
- outlining for scenarios 1.7.0 - 2011/07/29
Uninstall the beta integration (TechTalk.SpecFlow.VsIntegration.GherkinFile.vsix) before installing
SpecFlow 1.3.3. Breaking changes:
+ There are a few breaking changes in the generated test code. If you upgrade to SpecFlow 1.7, you should either
Fixed issues: re-generate the tests, or setup your project to use a version for generating the tests that is compatible with
+ MbUnit execution fails for pending steps (Assert method not found: Inconclusive) the runtime you use (see "Using SpecFlow generator from the project's lib folder" feature).
1.3.2 - 2010/06/29 New features:
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v2.3.6
New features: + Using SpecFlow generator from the project's lib folder instead of SpecFlow installed for IDE integration.
+ Support for MsTest for .NET 4.0 categories. Configure the test provider name to The VS2010 integration can be installed independently from projects using a different version. The VS2010
"MsTest.2010" in order to use the [TestCategory] attribute. integration checks the generator in the following paths:
+ Silverlight support (beta), see http://wiki.github.com/techtalk/SpecFlow/silverlight-support 1. generator path configured in app.config (<generator path="..\lib\SpecFlow"/>)
2. generator assembly (TechTalk.SpecFlow.Generator.dll) referenced from the SpecFlow project
Fixed issues: 3. generator in the same folder as the runtime (TechTalk.SpecFlow.dll)
+ Report generation fails if no custom XSLT is provided 4. generator is near to the runtime ("tools" or "..\tools", relative to the runtime)
5. generator obtained through NuGet ("..\..\tools", relative to the runtime)
If SpecFlow cannot find the generator or it is older than v1.6.0, the installed SpecFlow generator is used.
1.3.1 - 2010/06/21 If you use any custom plugins (e.g. unit test generator), this has to be in the same folder as the generator
currently.
New features: + Added ToProjection<T>, ToProjectionOfSet<T>, ToProjectionOfInstance<T> to allow for LINQ-based comparisons. (by Vagif Abilov)
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v2.0.1 + Cleaned-up CreateInstance<T> and CreateSet<T> for greater code maintainability.
+ Custom XSLT can be specified for generating reports. + Cleaned-up CompareToInstance<T> and CompareToSet<T> for greater code maintainability, and slightly more accurate value comparisons (like decimals with trailing zeroes).
See examples in Tests/ReportingTests/CustomXsltTemplate.feature + Removed the |Field|Value| requirement for CreateInstance<T> and CompareToInstance<T>. Any header names can be used, so long as the first column is the name of the property and the second column is the value.
+ The test error can be accessed through ScenarioContext.Current.TestError + Can use empty spaces and different casing in the tables used for comparison (i.e. can use |First name| instead of |FirstName| )
(e.g. in an AfterScenario event). + Tables used with CreateInstance<T> and CompareToInstance<T> can now be one-row tables with each field as a column (instead of requiring a vertical table with "Field/Value" headers)
+ [StepTransformation] attribute has been renamed to [StepArgumentTransformation] + A default function to create a default instance can be passed to CreateInstance<T> and CreateSet<T>.
because this name describe the intention better. Using the old attribute will + Syntax coloring support for Visual Studio 2008. Uncheck this option in the installer if you are using cuke4vs. (by Avram Korets)
generate a warning. + SharpDevelop 4 (#develop) integration. Enable SharpDevelop 4 integration in the installer and use the SharpDevelop AddIn Manager
+ Support for MbUnit to install the integration (select addin file from SpecFlow installation folder). (by Charles Weld)
+ Support for testing Silverlight asynchronous code. (by Matt Ellis & Ryan Burnham)
Fixed issues: See https://github.com/techtalk/SpecFlow/wiki/Testing-Silverlight-Asynchronous-Code for details.
+ NullReference exception when using BeforeTestRun event (Issue 41) + TableRow implements IDictionary<string, string>
+ Add table row from a (total or partially filled) dictionary
1.3.0 - 2010/05/05 + Raname table column (Table.RenameColumn(stirng, string))
New features: Fixed issues:
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v1.0.24 + Installer executes devenv /installtemplates even if VS2008 integration is not selected.
+ Context injection in step definitions. Step definitions can get a context injected with + Duplicated logic between generator and runtime (generator depends on runtime now)
constructor injection. (Issue 30) + MsTest tests are not properly attached to the right feature (Issue 96)
See examples in Tests/FeatureTests/ContextInjection + Assist methods now work with classes with multiple properties of the same enum type.
+ Using steps in other assemblies. This enables writing steps in VB. (Issue 19) + Refactor IUnitTestGeneratorProvider interface to be more consistent (Issue 4)
See examples in Tests/FeatureTests/ExternalSteps
+ Steps can be invoked from other steps using step text. See examples in 1.6.1 - 2011/04/15
Tests/FeatureTests/CallingStepsFromStepDefinitions
+ Custom step parameter converters can be defined as a binding. Fixed issues:
See examples in Tests/FeatureTests/StepArgumentTransfomation + Windows Phone 7 runtime (TechTalk.SpecFlow.WindowsPhone7.dll) is not included in the NuGet package (Issue 61)
+ SpecFlow feature files can be added also to VB.NET projects + Warnings in the generated test classes (Issue 58)
+ Support for xUnit + Improved tracing for VS2010 integration
+ Single installer for Visual Studio 2008 and 2010 (Issue 6, 10, 11)
+ Place GeneratedCodeAttribute and 'Designer generated code' region on generated code to 1.6.0 - 2011/04/04
avoid having this code parsed by code analysis. (Issue 33)
+ Configuration option to disable all output. (Issue 29) Breaking changes:
Use the following config to disable output: + The Silverlight runtime assembly has been renamed to TechTalk.SpecFlow.Silverlight3.dll.
<trace listener="TechTalk.SpecFlow.Tracing.NullListener, TechTalk.SpecFlow" />
New features:
Fixed issues: + Added a Set<T>(Func<T>) extension method. The Func<T> method will be invoked whenever ScenarioContext.Current.Get<T> is called.
+ SpecFlow Reporting doesn't work with Firefox (Issue 31) + Support for tagging (including @ignore) scenario outline examples.
+ Binding methods are executed using the culture of the feature file. NUnit and MbUnit: to filter for categories generated for the examples in the unit test runner, you need to
+ Several parsing issues are solved now (Issue 1, 8, 9, 37) switch off row test generaiton (<generator allowRowTests="false" />)
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v2.3.5
1.2.0 - 2009/11/25 + Support for converting table and multi-line text arguments with [StepArgumentTransformation] (by Chris Roff, roffster)
See examples in Tests/FeatureTests/StepArgumentTransfomation
New features: + VS2010: Support for specifying color for the step text
+ Generate #line pragmas to the output file (Issue 26) + Added a FillInstance<T>(T) extension method off of Table. When passed an instance of T, it will fill the instance with values from the table (like CreateInstance<T>).
+ Allow transformation of feature files from command-line and MsBuild (Issue 3) + VS2010: Re-generate feature file when the configuration has changed or a new version of SpecFlow is installed
+ Merge all command-line tool (generation, reports) to a single executable: specflow.exe + VS2010: Improved intellisense for steps
+ Support for Dutch and Swedish language + VS2010: Intellisense for keywords
+ Support enumerations in step binding arguments (Issue 28) + VS2010: "go to binding"
+ VS2010: Automatic table formatting when "|" is typed
Fixed issues: + VS2010: Tracing can be configured from tools / options. The environment variable SPECFLOW_TRACE is not used anymore.
+ MsTest does not refresh tests automatically (Issue 25) + Windows Phone 7 support, see https://github.com/techtalk/SpecFlow/wiki/Windows-Phone-7-Support (by Max Paulousky)
+ Fixes in report localization + Silverlight runtime can be configured from query string (by Matt Ellis)
+ Non-string parameters for bindings are not converted using the feature language (Issue 26) + Generate test parameters from scenario outline parameters and example set name for MsTest (by Qingsong Yao)
+ Isolated test generator interface (can be used later for using the generator of the project instead of the generator of the IDE integration)
1.1.0 - 2009/11/11 + Official NuGet integration (by Daniel Sack)
New features: Fixed issues:
+ Support for MsTest (Issue 4) + Scenario with only "*" steps fails with "System.ArgumentException: Unable to convert block to binding type"
+ Finalize configuration (Issue 13) + Binding is reported as invalid if there is a matching step definition with different scope
+ Support German, French and Hungarian languages (Issue 5) + Support for datetime comparisons that ignore 12:00:00 AM (issue 52)
+ Add strong-name for specflow assemblies (Issue 2) + Fix NUnit execution report to properly select features when .features is solely comprised Scenario Outlines.
+ Allow scenario events to be instance methods (Issue 20) (by Jon Archer)
+ More descriptive name for the scenario outline example tests than XYZ_Variant1 (Issue 18) + Tags applied at the feature level are now applied as Silverlight TagAttributes on the class. (by Matt Ellis, citizenmatt)
+ NUnit SpecFlow test execution report (Issue 23) + Rethrowing exceptions caught during steps would lose the call stack on Silverlight. (by Matt Ellis, citizenmatt)
+ Step definition usage report (Issue 24) + SpecFlow emits an erroneous suggestion for the step bindings in VB.NET (Issue 32)
+ Refactored VS2010 intagration to better maintanability
Fixed issues: + Refactored CreateSet<T> and CompareToSet<T> extension methods to use the same logic as CreateInstance<T> and CompareToInstance<T>.
+ Runtime: Remove direct dependency on nunit.framework.dll from the runtime (Issue 12) + Step Intellisense doesn't show in Feature Background (Issue 23)
+ Runtime: Binding methods with more than 4 parameters cannot be used (Issue 21) + Xunit Theory Attribute/InlineAttribute using incorrect namespace. (Issue 40, by Kerry Jones)
+ Generator: Special language characters (e.g. accented letters) are removed when generating + Scenario Outline - Multiple Scenarios table header row VS formatting issue (Issue 16)
test method names (Issue 22) + SpecFlow step definition report generator throws unhandled exception when a scenario starts with "And" (Issue 45)
+ VS2010: SpecFlow writes out feature and code-behind files with inconsistent line endings (Issue 28)
1.0.2 - 2009/10/20 + Step definitions can be implemented in abstract base classes (but the abstract base class must not have the [Binding] attribute). SpecFlow no longer tries to instantiate the abstract base class. (Issue 47)
New features: 1.5.0 - 2010/12/17
+ Runtime: allow non-static bindings
+ Runtime: support multiple step attributes on a single binding method Breaking changes:
+ Changing the default value (true) of the allowRowTests configuration setting is not incompatible with older
Fixed issues: runtimes.
+ VS: Error message is displayed when you add a SpecFlow project item to your project.
+ Parser: mixed order of Given/When/Then is not supported New features:
+ Runtime: the original phrasing of the keywords (Given/And/But) is not preserved + Step Intellisense for Visual Studio 2010 - displays the list of bound steps when pressing space or ctrl+space
+ Generator: the generated test class has a "Fixture" suffix after a step keyword
+ Parser: specifying any "given" should be optional (Thanks to Marcus Hammarberg for the contribution.)
+ Options for Visual Studio 2010 - you can enable/disable the integration features (syntax coloring, outlining,
intellisense) in Visual Studio 2010, Tools / Options / SpecFlow / General
1.0.1 - 2009/10/13 + Faster installation for VS2010 - if you install SpecFlow only to VS2010, the installation is much faster
as we now entirely using the new VSIX infrastructure for the integaration.
Initial publish on http://www.specflow.org + Support for row test generation (NUnit, MbUnit and xUnit). This new feature is enabled by default, but can
be switched off from the configuration with <generator allowRowTests="false" />.
(Thanks to John Gietzen (otac0n) for the contribution.)
+ Support for specifying property names with blanks and case insensitive for SpecFlow.Assist (by Steven Zhang, jdomzhang)
Fixed issues:
+ Scoped Steps does not recognize feature tags (Issue 12)
+ Support for double and nullable types in table-helpers of SpecFlow.Assist
+ Support for enum parsing in table-helpers of SpecFlow.Assist
+ Adding comparison helpers to SpecFlow.Assist (by darrencauthon)
+ Support for char parsing in table-helpers of SpecFlow.Assist (Issue 19)
+ VS2010 might crash after pasting into a feature file
+ Excution report should list features ordered by feature title
1.4.0 - 2010/10/07
Breaking changes:
+ The generator has been improved to provide source code language. Because of this, SpecFlow test generated
with this version will be incompatible with older runtimes.
New features:
+ Scoped Step Definitions: you can scope step definitions (bindings) to tags, features and scenarios. Scope filter
can be applied to a class or a method with the [StepScope] attribute.
See examples in Tests/FeatureTests/ScopedSteps/ScopedSteps.feature and Tests/FeatureTests/ScopedSteps/ScopedStepsBindings.cs
(Thanks to Jose Simas for the contribution.)
+ Adding binding-culture to App.config. If set, this culture is used during execution of steps.
+ VB-Step-Definition Skeleton Provider: For VB-projects, the suggested step skeletons are generated in VB.
+ Merging strongly typed context accessors from Darren Cauthon's SpecFlowAssist
+ Merging table/row extension methods from Darren Cauthon's SpecFlowAssist
Add a using statement for the namespace TechTalk.SpecFlow.Assist to use the extension methods.
See also Darren's youtube tutorial: http://bit.ly/aY4VOd
+ Diagnostic tracing: VS2010 integration can display trace messages to the Output window
if tracing is enabled. Tracing can be enabled by setting the environment variable SPECFLOW_TRACE
to either "all" or to the comma separated list of individual SpecFlow traing categories (currently
only the category "EditorParser" is supported).
Fixed issues:
+ Better error reporting for wrong Gherkin files (multiple errors displayed, detect duplicate scenario names)
+ Visual Studio 2010 editor slows down after editing a feature file for a longer time (Issue 9)
1.3.5.2 - 2010/08/11
Fixed issues:
+ Sorry, we're ironing out our deploy strategy with the new Mono/MonoDevelop integration. We didn't
change the version in the MonoDevelop Add-In XML file.
1.3.5.1 - 2010/08/11
New features:
+ Support for hosting add-in on http://addins.monodevelop.com
1.3.5 - 2010/08/11
New features:
+ Support for Mono (v2.6.7) & MonoDevelop (v2.4) by Dale Ragan
Fixed issues:
+ Generating code randomly for the wrong testing engine
+ Test class generation problem for Russian feature files
+ Fix tag support for Silverlight
1.3.4 - 2010/07/28
Fixed issues:
+ Installation fails if Visual Studio 2010 is not installed
+ VS2010: Background section is not colored properly
1.3.3 - 2010/07/19
New features:
+ Support for MsTest report generation
usage: specflow mstestexecutionreport projectFile [/testResult:value] [/xsltFile:value] [/out:value]
projectFile Visual Studio Project File containing specs
[/testResult:value] Test Result file generated by MsTest. Defaults to TestResult.trx
[/out:value] Generated Output File. Defaults to TestResult.html
[/xsltFile:value] Xslt file to use, defaults to built-in stylesheet if not provided
+ Visual Studio 2010 editor support:
- syntax coloring with configurable colors ("Gherkin ...")
- outlining for scenarios
Uninstall the beta integration (TechTalk.SpecFlow.VsIntegration.GherkinFile.vsix) before installing
SpecFlow 1.3.3.
Fixed issues:
+ MbUnit execution fails for pending steps (Assert method not found: Inconclusive)
1.3.2 - 2010/06/29
New features:
+ Support for MsTest for .NET 4.0 categories. Configure the test provider name to
"MsTest.2010" in order to use the [TestCategory] attribute.
+ Silverlight support (beta), see http://wiki.github.com/techtalk/SpecFlow/silverlight-support
Fixed issues:
+ Report generation fails if no custom XSLT is provided
1.3.1 - 2010/06/21
New features:
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v2.0.1
+ Custom XSLT can be specified for generating reports.
See examples in Tests/ReportingTests/CustomXsltTemplate.feature
+ The test error can be accessed through ScenarioContext.Current.TestError
(e.g. in an AfterScenario event).
+ [StepTransformation] attribute has been renamed to [StepArgumentTransformation]
because this name describe the intention better. Using the old attribute will
generate a warning.
+ Support for MbUnit
Fixed issues:
+ NullReference exception when using BeforeTestRun event (Issue 41)
1.3.0 - 2010/05/05
New features:
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v1.0.24
+ Context injection in step definitions. Step definitions can get a context injected with
constructor injection. (Issue 30)
See examples in Tests/FeatureTests/ContextInjection
+ Using steps in other assemblies. This enables writing steps in VB. (Issue 19)
See examples in Tests/FeatureTests/ExternalSteps
+ Steps can be invoked from other steps using step text. See examples in
Tests/FeatureTests/CallingStepsFromStepDefinitions
+ Custom step parameter converters can be defined as a binding.
See examples in Tests/FeatureTests/StepArgumentTransfomation
+ SpecFlow feature files can be added also to VB.NET projects
+ Support for xUnit
+ Single installer for Visual Studio 2008 and 2010 (Issue 6, 10, 11)
+ Place GeneratedCodeAttribute and 'Designer generated code' region on generated code to
avoid having this code parsed by code analysis. (Issue 33)
+ Configuration option to disable all output. (Issue 29)
Use the following config to disable output:
<trace listener="TechTalk.SpecFlow.Tracing.NullListener, TechTalk.SpecFlow" />
Fixed issues:
+ SpecFlow Reporting doesn't work with Firefox (Issue 31)
+ Binding methods are executed using the culture of the feature file.
+ Several parsing issues are solved now (Issue 1, 8, 9, 37)
1.2.0 - 2009/11/25
New features:
+ Generate #line pragmas to the output file (Issue 26)
+ Allow transformation of feature files from command-line and MsBuild (Issue 3)
+ Merge all command-line tool (generation, reports) to a single executable: specflow.exe
+ Support for Dutch and Swedish language
+ Support enumerations in step binding arguments (Issue 28)
Fixed issues:
+ MsTest does not refresh tests automatically (Issue 25)
+ Fixes in report localization
+ Non-string parameters for bindings are not converted using the feature language (Issue 26)
1.1.0 - 2009/11/11
New features:
+ Support for MsTest (Issue 4)
+ Finalize configuration (Issue 13)
+ Support German, French and Hungarian languages (Issue 5)
+ Add strong-name for specflow assemblies (Issue 2)
+ Allow scenario events to be instance methods (Issue 20)
+ More descriptive name for the scenario outline example tests than XYZ_Variant1 (Issue 18)
+ NUnit SpecFlow test execution report (Issue 23)
+ Step definition usage report (Issue 24)
Fixed issues:
+ Runtime: Remove direct dependency on nunit.framework.dll from the runtime (Issue 12)
+ Runtime: Binding methods with more than 4 parameters cannot be used (Issue 21)
+ Generator: Special language characters (e.g. accented letters) are removed when generating
test method names (Issue 22)
1.0.2 - 2009/10/20
New features:
+ Runtime: allow non-static bindings
+ Runtime: support multiple step attributes on a single binding method
Fixed issues:
+ VS: Error message is displayed when you add a SpecFlow project item to your project.
+ Parser: mixed order of Given/When/Then is not supported
+ Runtime: the original phrasing of the keywords (Given/And/But) is not preserved
+ Generator: the generated test class has a "Fixture" suffix
+ Parser: specifying any "given" should be optional
1.0.1 - 2009/10/13
Initial publish on http://www.specflow.org
Binary file not shown.
+25 -12
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.3.2.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.3.2.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("The Admin side of the app")] [NUnit.Framework.DescriptionAttribute("The Admin side of the app")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "The Admin side of the app", "In order to manage my site\r\nAs a privileged user\r\nI want to not have my cheese mo" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "The Admin side of the app", " In order to manage my site\r\n As a privileged user\r\n I want to not have my che" +
"ved in the admin", ((string[])(null))); "ese moved in the admin", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("The current version of Orchard is displayed in the admin")] [NUnit.Framework.DescriptionAttribute("The current version of Orchard is displayed in the admin")]
public virtual void TheCurrentVersionOfOrchardIsDisplayedInTheAdmin() public virtual void TheCurrentVersionOfOrchardIsDisplayedInTheAdmin()
@@ -61,14 +73,15 @@ namespace Orchard.Specs
#line 6 #line 6
this.ScenarioSetup(scenarioInfo); this.ScenarioSetup(scenarioInfo);
#line 7 #line 7
testRunner.Given("I have installed Orchard"); testRunner.Given("I have installed Orchard");
#line 8 #line 8
testRunner.When("I go to \"admin\""); testRunner.When("I go to \"admin\"");
#line 9 #line 9
testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\""); testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+30 -17
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.17011 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Blog")] [NUnit.Framework.DescriptionAttribute("Blog")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Blog", "In order to add blogs to my site\r\nAs an author\r\nI want to create blogs and create" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Blog", " In order to add blogs to my site\r\n As an author\r\n I want to create blogs and " +
", publish and edit blog posts", GenerationTargetLanguage.CSharp, ((string[])(null))); "create, publish and edit blog posts", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("In the admin (menu) there is a link to create a Blog")] [NUnit.Framework.DescriptionAttribute("In the admin (menu) there is a link to create a Blog")]
public virtual void InTheAdminMenuThereIsALinkToCreateABlog() public virtual void InTheAdminMenuThereIsALinkToCreateABlog()
@@ -67,7 +79,7 @@ this.ScenarioSetup(scenarioInfo);
#line 9 #line 9
testRunner.Then("I should see \"<a[^>]*href=\"/Admin/Blogs/Create\"[^>]*>Blog</a>\""); testRunner.Then("I should see \"<a[^>]*href=\"/Admin/Blogs/Create\"[^>]*>Blog</a>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -129,7 +141,7 @@ this.ScenarioSetup(scenarioInfo);
#line 33 #line 33
testRunner.And("I should see \"Hi there.\""); testRunner.And("I should see \"Hi there.\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -238,7 +250,7 @@ this.ScenarioSetup(scenarioInfo);
#line 75 #line 75
testRunner.And("I should see \"Are you still there?\""); testRunner.And("I should see \"Are you still there?\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -323,7 +335,7 @@ this.ScenarioSetup(scenarioInfo);
#line 108 #line 108
testRunner.And("I should see \"Hi there.\""); testRunner.And("I should see \"Hi there.\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -376,7 +388,7 @@ this.ScenarioSetup(scenarioInfo);
testRunner.Then("I should see \"<link rel=\"alternate\" type=\"application/rss\\+xml\" title=\"My Blog\" h" + testRunner.Then("I should see \"<link rel=\"alternate\" type=\"application/rss\\+xml\" title=\"My Blog\" h" +
"ref=\"/rss\\?containerid=\\d+\" />\""); "ref=\"/rss\\?containerid=\\d+\" />\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -422,7 +434,7 @@ this.ScenarioSetup(scenarioInfo);
#line 144 #line 144
testRunner.And("I should see \"<clientType>Metaweblog</clientType>\""); testRunner.And("I should see \"<clientType>Metaweblog</clientType>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -460,7 +472,7 @@ this.ScenarioSetup(scenarioInfo);
#line 157 #line 157
testRunner.Then("I should see \"<span>http\\://localhost/OrchardLocal/my-blog/</span>\""); testRunner.Then("I should see \"<span>http\\://localhost/OrchardLocal/my-blog/</span>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -498,7 +510,7 @@ this.ScenarioSetup(scenarioInfo);
#line 170 #line 170
testRunner.Then("I should see \"<span>http\\://localhost/my-blog/</span>\""); testRunner.Then("I should see \"<span>http\\://localhost/my-blog/</span>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -563,8 +575,9 @@ this.ScenarioSetup(scenarioInfo);
#line 194 #line 194
testRunner.Then("I should see \"<h1>My Post</h1>\""); testRunner.Then("I should see \"<h1>My Post</h1>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+22 -9
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Comments")] [NUnit.Framework.DescriptionAttribute("Comments")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Comments", "In order to enable simple comment capabilities on my site\r\nAs an author\r\nI want t" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Comments", " In order to enable simple comment capabilities on my site\r\n As an author\r\n I " +
"o allow comments to be safely posted on specific content item pages", GenerationTargetLanguage.CSharp, ((string[])(null))); "want to allow comments to be safely posted on specific content item pages", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("HTML markup in any given comment is encoded")] [NUnit.Framework.DescriptionAttribute("HTML markup in any given comment is encoded")]
public virtual void HTMLMarkupInAnyGivenCommentIsEncoded() public virtual void HTMLMarkupInAnyGivenCommentIsEncoded()
@@ -145,8 +157,9 @@ this.ScenarioSetup(scenarioInfo);
#line 44 #line 44
testRunner.And("I should not see \"<br id=\"bad-anon-br\" />\""); testRunner.And("I should not see \"<br id=\"bad-anon-br\" />\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+33 -21
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.4.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.4.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Content rights management")] [NUnit.Framework.DescriptionAttribute("Content rights management")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Content rights management", "In order to ensure security\r\nAs a root Orchard system operator\r\nI want only the a" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Content rights management", " In order to ensure security\r\n As a root Orchard system operator\r\n I want only" +
"llowed users to edit the content", GenerationTargetLanguage.CSharp, ((string[])(null))); " the allowed users to edit the content", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Administrators can manage a Page")] [NUnit.Framework.DescriptionAttribute("Administrators can manage a Page")]
public virtual void AdministratorsCanManageAPage() public virtual void AdministratorsCanManageAPage()
@@ -69,7 +81,7 @@ this.ScenarioSetup(scenarioInfo);
#line 10 #line 10
testRunner.And("\"user1\" should be able to \"edit\" a \"Page\" owned by \"user1\""); testRunner.And("\"user1\" should be able to \"edit\" a \"Page\" owned by \"user1\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -82,8 +94,7 @@ this.ScenarioSetup(scenarioInfo);
#line 13 #line 13
testRunner.Given("I have installed Orchard"); testRunner.Given("I have installed Orchard");
#line 14 #line 14
testRunner.When("I have a role \"CustomRole\" with permissions \"EditContent, DeleteConte" + testRunner.When("I have a role \"CustomRole\" with permissions \"EditContent, DeleteContent\"");
"nt\"");
#line 15 #line 15
testRunner.And("I have a user \"user1\" with roles \"CustomRole\""); testRunner.And("I have a user \"user1\" with roles \"CustomRole\"");
#line 16 #line 16
@@ -93,7 +104,7 @@ this.ScenarioSetup(scenarioInfo);
#line 18 #line 18
testRunner.And("\"user1\" should be able to \"delete\" a \"Page\" owned by \"user1\""); testRunner.And("\"user1\" should be able to \"delete\" a \"Page\" owned by \"user1\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -118,7 +129,7 @@ this.ScenarioSetup(scenarioInfo);
#line 27 #line 27
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -141,7 +152,7 @@ this.ScenarioSetup(scenarioInfo);
#line 35 #line 35
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user1\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user1\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -166,7 +177,7 @@ this.ScenarioSetup(scenarioInfo);
#line 43 #line 43
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user1\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user1\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -189,7 +200,7 @@ this.ScenarioSetup(scenarioInfo);
#line 51 #line 51
testRunner.And("\"user1\" should be able to \"delete\" a \"Page\" owned by \"user1\""); testRunner.And("\"user1\" should be able to \"delete\" a \"Page\" owned by \"user1\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -214,7 +225,7 @@ this.ScenarioSetup(scenarioInfo);
#line 60 #line 60
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -239,7 +250,7 @@ this.ScenarioSetup(scenarioInfo);
#line 69 #line 69
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -264,7 +275,7 @@ this.ScenarioSetup(scenarioInfo);
#line 78 #line 78
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -289,7 +300,7 @@ this.ScenarioSetup(scenarioInfo);
#line 87 #line 87
testRunner.And("\"user1\" should be able to \"delete\" a \"Page\" owned by \"user2\""); testRunner.And("\"user1\" should be able to \"delete\" a \"Page\" owned by \"user2\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -314,8 +325,9 @@ this.ScenarioSetup(scenarioInfo);
#line 97 #line 97
testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\""); testRunner.And("\"user1\" should not be able to \"delete\" a \"Page\" owned by \"user2\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+25 -12
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Content Types")] [NUnit.Framework.DescriptionAttribute("Content Types")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Content Types", "In order to add new types to my site\r\nAs an adminitrator\r\nI want to create create" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Content Types", " In order to add new types to my site\r\n As an adminitrator\r\n I want to create " +
" content types", GenerationTargetLanguage.CSharp, ((string[])(null))); "create content types", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("I can create a new content type")] [NUnit.Framework.DescriptionAttribute("I can create a new content type")]
public virtual void ICanCreateANewContentType() public virtual void ICanCreateANewContentType()
@@ -87,7 +99,7 @@ this.ScenarioSetup(scenarioInfo);
#line 17 #line 17
testRunner.Then("I should see \"Event\""); testRunner.Then("I should see \"Event\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -140,7 +152,7 @@ this.ScenarioSetup(scenarioInfo);
#line 36 #line 36
testRunner.And("I should see \"validation-summary-errors\""); testRunner.And("I should see \"validation-summary-errors\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -193,7 +205,7 @@ this.ScenarioSetup(scenarioInfo);
#line 55 #line 55
testRunner.And("I should see \"validation-summary-errors\""); testRunner.And("I should see \"validation-summary-errors\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -261,8 +273,9 @@ this.ScenarioSetup(scenarioInfo);
#line 80 #line 80
testRunner.Then("I should see \"validation-summary-errors\""); testRunner.Then("I should see \"validation-summary-errors\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+23 -10
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.4.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.4.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Lists")] [NUnit.Framework.DescriptionAttribute("Lists")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Lists", "In order to add new lists to my site\r\nAs an administrator\r\nI want to create lists" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Lists", " In order to add new lists to my site\r\n As an administrator\r\n I want to create" +
"", GenerationTargetLanguage.CSharp, ((string[])(null))); " lists", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("I can create a new list")] [NUnit.Framework.DescriptionAttribute("I can create a new list")]
public virtual void ICanCreateANewList() public virtual void ICanCreateANewList()
@@ -80,7 +92,7 @@ this.ScenarioSetup(scenarioInfo);
#line 14 #line 14
testRunner.Then("I should see \"MyList\""); testRunner.Then("I should see \"MyList\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -139,8 +151,9 @@ this.ScenarioSetup(scenarioInfo);
#line 37 #line 37
testRunner.And("I should see \"MyContentItem\""); testRunner.And("I should see \"MyContentItem\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+24 -11
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Media management")] [NUnit.Framework.DescriptionAttribute("Media management")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Media management", "In order to reference images and such from content\r\nAs an author\r\nI want to uploa" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Media management", " In order to reference images and such from content\r\n As an author\r\n I want to" +
"d and manage files in a media folder", GenerationTargetLanguage.CSharp, ((string[])(null))); " upload and manage files in a media folder", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Media admin is available")] [NUnit.Framework.DescriptionAttribute("Media admin is available")]
public virtual void MediaAdminIsAvailable() public virtual void MediaAdminIsAvailable()
@@ -71,7 +83,7 @@ this.ScenarioSetup(scenarioInfo);
#line 11 #line 11
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -107,7 +119,7 @@ this.ScenarioSetup(scenarioInfo);
#line 24 #line 24
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -132,8 +144,9 @@ this.ScenarioSetup(scenarioInfo);
#line 33 #line 33
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+23 -10
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Module management")] [NUnit.Framework.DescriptionAttribute("Module management")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Module management", "In order add and enable features\r\nAs a root Orchard system operator\r\nI want to in" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Module management", " In order add and enable features\r\n As a root Orchard system operator\r\n I want" +
"stall and enable modules and enable features", GenerationTargetLanguage.CSharp, ((string[])(null))); " to install and enable modules and enable features", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Installed modules are listed")] [NUnit.Framework.DescriptionAttribute("Installed modules are listed")]
public virtual void InstalledModulesAreListed() public virtual void InstalledModulesAreListed()
@@ -84,7 +96,7 @@ this.ScenarioSetup(scenarioInfo);
#line 16 #line 16
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -105,8 +117,9 @@ this.ScenarioSetup(scenarioInfo);
#line 23 #line 23
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+34 -21
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.225 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Multiple tenant management")] [NUnit.Framework.DescriptionAttribute("Multiple tenant management")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Multiple tenant management", "In order to host several isolated web applications\r\nAs a root Orchard system oper" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Multiple tenant management", " In order to host several isolated web applications\r\n As a root Orchard system " +
"ator\r\nI want to create and manage tenant configurations", GenerationTargetLanguage.CSharp, ((string[])(null))); "operator\r\n I want to create and manage tenant configurations", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Default site is listed")] [NUnit.Framework.DescriptionAttribute("Default site is listed")]
public virtual void DefaultSiteIsListed() public virtual void DefaultSiteIsListed()
@@ -73,7 +85,7 @@ this.ScenarioSetup(scenarioInfo);
#line 12 #line 12
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -94,7 +106,7 @@ this.ScenarioSetup(scenarioInfo);
#line 19 #line 19
testRunner.Then("I should see \"is required\""); testRunner.Then("I should see \"is required\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -128,7 +140,7 @@ this.ScenarioSetup(scenarioInfo);
#line 31 #line 31
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -162,7 +174,7 @@ this.ScenarioSetup(scenarioInfo);
#line 43 #line 43
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -201,7 +213,7 @@ this.ScenarioSetup(scenarioInfo);
#line 57 #line 57
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -278,7 +290,7 @@ this.ScenarioSetup(scenarioInfo);
#line 86 #line 86
testRunner.Then("I should see \"Welcome to Orchard\""); testRunner.Then("I should see \"Welcome to Orchard\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -324,7 +336,7 @@ this.ScenarioSetup(scenarioInfo);
#line 103 #line 103
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -380,7 +392,7 @@ this.ScenarioSetup(scenarioInfo);
#line 123 #line 123
testRunner.And("I should see \"Welcome\""); testRunner.And("I should see \"Welcome\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -438,7 +450,7 @@ this.ScenarioSetup(scenarioInfo);
#line 144 #line 144
testRunner.And("I should not see \"Allow the tenant to set up the database\""); testRunner.And("I should not see \"Allow the tenant to set up the database\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -457,7 +469,7 @@ this.ScenarioSetup(scenarioInfo);
#line 150 #line 150
testRunner.Then("I should not see \"<form action=\"/Admin/MultiTenancy/disable\"\""); testRunner.Then("I should not see \"<form action=\"/Admin/MultiTenancy/disable\"\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -515,7 +527,7 @@ this.ScenarioSetup(scenarioInfo);
#line 171 #line 171
testRunner.Then("I should see \"<form action=\"/Admin/MultiTenancy/enable\"\""); testRunner.Then("I should see \"<form action=\"/Admin/MultiTenancy/enable\"\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -577,7 +589,7 @@ this.ScenarioSetup(scenarioInfo);
#line 194 #line 194
testRunner.Then("I should see \"<form action=\"/Admin/MultiTenancy/disable\"\""); testRunner.Then("I should see \"<form action=\"/Admin/MultiTenancy/disable\"\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -600,8 +612,9 @@ this.ScenarioSetup(scenarioInfo);
#line 202 #line 202
testRunner.And("I should see \"Request Url Host: example.org\""); testRunner.And("I should see \"Request Url Host: example.org\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+9
View File
@@ -154,6 +154,11 @@
<DesignTime>True</DesignTime> <DesignTime>True</DesignTime>
<DependentUpon>ContentTypes.feature</DependentUpon> <DependentUpon>ContentTypes.feature</DependentUpon>
</Compile> </Compile>
<Compile Include="Tags.feature.cs">
<DependentUpon>Tags.feature</DependentUpon>
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
</Compile>
<Compile Include="Hosting\ExtensionDeploymentOptions.cs" /> <Compile Include="Hosting\ExtensionDeploymentOptions.cs" />
<Compile Include="Hosting\MessageSink.cs" /> <Compile Include="Hosting\MessageSink.cs" />
<Compile Include="Hosting\HostingTraceListener.cs" /> <Compile Include="Hosting\HostingTraceListener.cs" />
@@ -266,6 +271,10 @@
<Generator>SpecFlowSingleFileGenerator</Generator> <Generator>SpecFlowSingleFileGenerator</Generator>
<LastGenOutput>ContentTypes.feature.cs</LastGenOutput> <LastGenOutput>ContentTypes.feature.cs</LastGenOutput>
</None> </None>
<None Include="Tags.feature">
<Generator>SpecFlowSingleFileGenerator</Generator>
<LastGenOutput>Tags.feature.cs</LastGenOutput>
</None>
<None Include="Lists.feature"> <None Include="Lists.feature">
<Generator>SpecFlowSingleFileGenerator</Generator> <Generator>SpecFlowSingleFileGenerator</Generator>
<LastGenOutput>Lists.feature.cs</LastGenOutput> <LastGenOutput>Lists.feature.cs</LastGenOutput>
+26 -13
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Pages")] [NUnit.Framework.DescriptionAttribute("Pages")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Pages", "In order to add content pages to my site\r\nAs an author\r\nI want to create, publish" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Pages", " In order to add content pages to my site\r\n As an author\r\n I want to create, p" +
" and edit pages", GenerationTargetLanguage.CSharp, ((string[])(null))); "ublish and edit pages", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("In the admin (menu) there is a link to create a Page")] [NUnit.Framework.DescriptionAttribute("In the admin (menu) there is a link to create a Page")]
public virtual void InTheAdminMenuThereIsALinkToCreateAPage() public virtual void InTheAdminMenuThereIsALinkToCreateAPage()
@@ -67,7 +79,7 @@ this.ScenarioSetup(scenarioInfo);
#line 9 #line 9
testRunner.Then("I should see \"<a href=\"/Admin/Contents/Create/Page\"[^>]*>Page</a>\""); testRunner.Then("I should see \"<a href=\"/Admin/Contents/Create/Page\"[^>]*>Page</a>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -102,7 +114,7 @@ this.ScenarioSetup(scenarioInfo);
#line 21 #line 21
testRunner.And("I should see \"This is super.\""); testRunner.And("I should see \"This is super.\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -161,7 +173,7 @@ this.ScenarioSetup(scenarioInfo);
#line 42 #line 42
testRunner.And("I should see \"This is super number two.\""); testRunner.And("I should see \"This is super number two.\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -203,7 +215,7 @@ this.ScenarioSetup(scenarioInfo);
#line 56 #line 56
testRunner.Then("the status should be 404 \"Not Found\""); testRunner.Then("the status should be 404 \"Not Found\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -241,8 +253,9 @@ this.ScenarioSetup(scenarioInfo);
#line 68 #line 68
testRunner.Then("I should see \"<h1>Welcome to Orchard!</h1>\""); testRunner.Then("I should see \"<h1>Welcome to Orchard!</h1>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+23 -10
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Addition")] [NUnit.Framework.DescriptionAttribute("Addition")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Addition", "In order to prevent security model regressions\r\nAs a user with specific permissio" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Addition", " In order to prevent security model regressions\r\n As a user with specific permi" +
"ns\r\nI should to be granted or denied access to various actions", GenerationTargetLanguage.CSharp, ((string[])(null))); "ssions\r\n I should to be granted or denied access to various actions", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Login can be automated")] [NUnit.Framework.DescriptionAttribute("Login can be automated")]
[NUnit.Framework.CategoryAttribute("security")] [NUnit.Framework.CategoryAttribute("security")]
@@ -91,7 +103,7 @@ this.ScenarioSetup(scenarioInfo);
#line 19 #line 19
testRunner.And("I should see \"bob\""); testRunner.And("I should see \"bob\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -116,8 +128,9 @@ this.ScenarioSetup(scenarioInfo);
#line 28 #line 28
testRunner.And("I should be denied access when I go to \"admin\""); testRunner.And("I should be denied access when I go to \"admin\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+25 -12
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.17011 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Setup")] [NUnit.Framework.DescriptionAttribute("Setup")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Setup", "In order to install orchard\r\nAs a new user\r\nI want to setup a new site from the d" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Setup", " In order to install orchard\r\n As a new user\r\n I want to setup a new site from" +
"efault screen", GenerationTargetLanguage.CSharp, ((string[])(null))); " the default screen", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Root request shows setup form")] [NUnit.Framework.DescriptionAttribute("Root request shows setup form")]
public virtual void RootRequestShowsSetupForm() public virtual void RootRequestShowsSetupForm()
@@ -86,7 +98,7 @@ this.ScenarioSetup(scenarioInfo);
#line 15 #line 15
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -122,7 +134,7 @@ this.ScenarioSetup(scenarioInfo);
#line 26 #line 26
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -160,7 +172,7 @@ this.ScenarioSetup(scenarioInfo);
testRunner.And("I should see \"<input class=\"input-validation-error\" id=\"AdminPassword\" name=\"Admi" + testRunner.And("I should see \"<input class=\"input-validation-error\" id=\"AdminPassword\" name=\"Admi" +
"nPassword\" type=\"password\" />\""); "nPassword\" type=\"password\" />\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -213,8 +225,9 @@ this.ScenarioSetup(scenarioInfo);
testRunner.And("I should see \"Welcome, <strong><a href=\"/Users/Account/ChangePassword\">admin</a><" + testRunner.And("I should see \"Welcome, <strong><a href=\"/Users/Account/ChangePassword\">admin</a><" +
"/strong>!\""); "/strong>!\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+24 -11
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.4.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.4.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("The compilation of modules installed in a site")] [NUnit.Framework.DescriptionAttribute("The compilation of modules installed in a site")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "The compilation of modules installed in a site", "In order to install on Orchard site\r\nAs a privileged user\r\nI want to have the mod" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "The compilation of modules installed in a site", " In order to install on Orchard site\r\n As a privileged user\r\n I want to have t" +
"ules compiled/installed properly", GenerationTargetLanguage.CSharp, ((string[])(null))); "he modules compiled/installed properly", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Dynamic compilation can be disabled")] [NUnit.Framework.DescriptionAttribute("Dynamic compilation can be disabled")]
public virtual void DynamicCompilationCanBeDisabled() public virtual void DynamicCompilationCanBeDisabled()
@@ -69,7 +81,7 @@ this.ScenarioSetup(scenarioInfo);
#line 10 #line 10
testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\""); testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -88,7 +100,7 @@ this.ScenarioSetup(scenarioInfo);
#line 16 #line 16
testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\""); testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -107,8 +119,9 @@ this.ScenarioSetup(scenarioInfo);
#line 22 #line 22
testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\""); testRunner.Then("I should see \"<div id=\"orchard-version\">Orchard v(?:\\.\\d+){2,4}</div>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+30 -17
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.5.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.5.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Users")] [NUnit.Framework.DescriptionAttribute("Users")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Users", "In order to prevent users module regressions\r\nAs a site owner\r\nI want to create, " + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Users", " In order to prevent users module regressions\r\n As a site owner\r\n I want to cr" +
"search and modify user accounts", GenerationTargetLanguage.CSharp, ((string[])(null))); "eate, search and modify user accounts", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("There is only one user by default")] [NUnit.Framework.DescriptionAttribute("There is only one user by default")]
[NUnit.Framework.CategoryAttribute("management")] [NUnit.Framework.CategoryAttribute("management")]
@@ -71,7 +83,7 @@ this.ScenarioSetup(scenarioInfo);
#line 11 #line 11
testRunner.And("I should see \"<a[^>]*>admin</a>\""); testRunner.And("I should see \"<a[^>]*>admin</a>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -236,7 +248,7 @@ this.ScenarioSetup(scenarioInfo);
#line 75 #line 75
testRunner.Then("I should see \"Password confirmation must match\""); testRunner.Then("I should see \"Password confirmation must match\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -316,7 +328,7 @@ this.ScenarioSetup(scenarioInfo);
#line 105 #line 105
testRunner.And("I should see \"user2@domain.com\""); testRunner.And("I should see \"user2@domain.com\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -432,7 +444,7 @@ this.ScenarioSetup(scenarioInfo);
#line 151 #line 151
testRunner.Then("I should see \"User with that username and/or email already exists.\""); testRunner.Then("I should see \"User with that username and/or email already exists.\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -498,7 +510,7 @@ this.ScenarioSetup(scenarioInfo);
#line 178 #line 178
testRunner.And("I should not see \"<a[^>]*>user1</a>\""); testRunner.And("I should not see \"<a[^>]*>user1</a>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -618,7 +630,7 @@ this.ScenarioSetup(scenarioInfo);
#line 226 #line 226
testRunner.And("I should not see \"<a[^>]*>admin</a>\""); testRunner.And("I should not see \"<a[^>]*>admin</a>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -774,7 +786,7 @@ this.ScenarioSetup(scenarioInfo);
#line 289 #line 289
testRunner.And("I should see \"<a[^>]*>admin</a>\""); testRunner.And("I should see \"<a[^>]*>admin</a>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -815,7 +827,7 @@ this.ScenarioSetup(scenarioInfo);
#line 302 #line 302
testRunner.Then("I should see \"You must specify a valid email address.\""); testRunner.Then("I should see \"You must specify a valid email address.\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -858,8 +870,9 @@ this.ScenarioSetup(scenarioInfo);
#line 316 #line 316
testRunner.Then("I should see \"User created\""); testRunner.Then("I should see \"User created\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+27 -14
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.3.2.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.3.2.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Using SpecFlow")] [NUnit.Framework.DescriptionAttribute("Using SpecFlow")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Using SpecFlow", "In order to test Orchard\r\nAs a developer or contributor\r\nI want to define scenari" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Using SpecFlow", " In order to test Orchard\r\n As a developer or contributor\r\n I want to define s" +
"os that ensure functionality", ((string[])(null))); "cenarios that ensure functionality", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Spec flow generates and runs via nunit")] [NUnit.Framework.DescriptionAttribute("Spec flow generates and runs via nunit")]
public virtual void SpecFlowGeneratesAndRunsViaNunit() public virtual void SpecFlowGeneratesAndRunsViaNunit()
@@ -61,18 +73,19 @@ namespace Orchard.Specs
#line 6 #line 6
this.ScenarioSetup(scenarioInfo); this.ScenarioSetup(scenarioInfo);
#line 7 #line 7
testRunner.Given("I have a scenario"); testRunner.Given("I have a scenario");
#line 8 #line 8
testRunner.When("I run steps"); testRunner.When("I run steps");
#line 9 #line 9
testRunner.And("they have values like \"5\""); testRunner.And("they have values like \"5\"");
#line 10 #line 10
testRunner.Then("they run"); testRunner.Then("they run");
#line 11 #line 11
testRunner.And("values like five are captured"); testRunner.And("values like five are captured");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+30 -17
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.4.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.1 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.4.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Web Hosting")] [NUnit.Framework.DescriptionAttribute("Web Hosting")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Web Hosting", "In order to test orchard\r\nAs an integration runner\r\nI want to verify basic hostin" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Web Hosting", " In order to test orchard\r\n As an integration runner\r\n I want to verify basic " +
"g is working", GenerationTargetLanguage.CSharp, ((string[])(null))); "hosting is working", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("Returning static files")] [NUnit.Framework.DescriptionAttribute("Returning static files")]
public virtual void ReturningStaticFiles() public virtual void ReturningStaticFiles()
@@ -69,7 +81,7 @@ this.ScenarioSetup(scenarioInfo);
#line 10 #line 10
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -88,7 +100,7 @@ this.ScenarioSetup(scenarioInfo);
#line 16 #line 16
testRunner.And("the status should be 200 \"OK\""); testRunner.And("the status should be 200 \"OK\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -107,7 +119,7 @@ this.ScenarioSetup(scenarioInfo);
#line 22 #line 22
testRunner.And("I should see \"Hello yet again\""); testRunner.And("I should see \"Hello yet again\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -128,7 +140,7 @@ this.ScenarioSetup(scenarioInfo);
#line 29 #line 29
testRunner.And("I should see \"Hello yet again\""); testRunner.And("I should see \"Hello yet again\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -160,7 +172,7 @@ this.ScenarioSetup(scenarioInfo);
#line 40 #line 40
testRunner.And("I should see \"input1:gamma\""); testRunner.And("I should see \"input1:gamma\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -179,7 +191,7 @@ this.ScenarioSetup(scenarioInfo);
#line 46 #line 46
testRunner.Then("I should see \"foo:bar\""); testRunner.Then("I should see \"foo:bar\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -198,7 +210,7 @@ this.ScenarioSetup(scenarioInfo);
#line 52 #line 52
testRunner.Then("I should see \"Hello again\""); testRunner.Then("I should see \"Hello again\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -215,7 +227,7 @@ this.ScenarioSetup(scenarioInfo);
#line 57 #line 57
testRunner.Then("the status should be 404 \"Not Found\""); testRunner.Then("the status should be 404 \"Not Found\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -232,8 +244,9 @@ this.ScenarioSetup(scenarioInfo);
#line 62 #line 62
testRunner.Then("the status should be 404 \"Not Found\""); testRunner.Then("the status should be 404 \"Not Found\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion
+25 -12
View File
@@ -1,20 +1,22 @@
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/). // This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.4.0.0 // SpecFlow Version:1.8.1.0
// Runtime Version:4.0.30319.225 // SpecFlow Generator Version:1.8.0.0
// Runtime Version:4.0.30319.239
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </auto-generated> // </auto-generated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
#region Designer generated code #region Designer generated code
#pragma warning disable
namespace Orchard.Specs namespace Orchard.Specs
{ {
using TechTalk.SpecFlow; using TechTalk.SpecFlow;
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.4.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.8.1.0")]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.TestFixtureAttribute()]
[NUnit.Framework.DescriptionAttribute("Widgets")] [NUnit.Framework.DescriptionAttribute("Widgets")]
@@ -30,8 +32,8 @@ namespace Orchard.Specs
public virtual void FeatureSetup() public virtual void FeatureSetup()
{ {
testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner(); testRunner = TechTalk.SpecFlow.TestRunnerManager.GetTestRunner();
TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Widgets", "In order to add and manage widgets on my site\r\nAs an author\r\nI want to create and" + TechTalk.SpecFlow.FeatureInfo featureInfo = new TechTalk.SpecFlow.FeatureInfo(new System.Globalization.CultureInfo("en-US"), "Widgets", " In order to add and manage widgets on my site\r\n As an author\r\n I want to crea" +
" edit widgets and layers", GenerationTargetLanguage.CSharp, ((string[])(null))); "te and edit widgets and layers", ProgrammingLanguage.CSharp, ((string[])(null)));
testRunner.OnFeatureStart(featureInfo); testRunner.OnFeatureStart(featureInfo);
} }
@@ -42,9 +44,9 @@ namespace Orchard.Specs
testRunner = null; testRunner = null;
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo) [NUnit.Framework.SetUpAttribute()]
public virtual void TestInitialize()
{ {
testRunner.OnScenarioStart(scenarioInfo);
} }
[NUnit.Framework.TearDownAttribute()] [NUnit.Framework.TearDownAttribute()]
@@ -53,6 +55,16 @@ namespace Orchard.Specs
testRunner.OnScenarioEnd(); testRunner.OnScenarioEnd();
} }
public virtual void ScenarioSetup(TechTalk.SpecFlow.ScenarioInfo scenarioInfo)
{
testRunner.OnScenarioStart(scenarioInfo);
}
public virtual void ScenarioCleanup()
{
testRunner.CollectScenarioErrors();
}
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
[NUnit.Framework.DescriptionAttribute("I can edit a default layer")] [NUnit.Framework.DescriptionAttribute("I can edit a default layer")]
public virtual void ICanEditADefaultLayer() public virtual void ICanEditADefaultLayer()
@@ -88,7 +100,7 @@ this.ScenarioSetup(scenarioInfo);
#line 18 #line 18
testRunner.Then("I should see \"<textarea[^>]*>\\s*This is the default layer.\\s*</textarea>\""); testRunner.Then("I should see \"<textarea[^>]*>\\s*This is the default layer.\\s*</textarea>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -130,7 +142,7 @@ this.ScenarioSetup(scenarioInfo);
testRunner.And("I should see \"<option[^>]+selected=\"selected\"[^>]+value=\"\\d+\">For awesome stuff</" + testRunner.And("I should see \"<option[^>]+selected=\"selected\"[^>]+value=\"\\d+\">For awesome stuff</" +
"option>\""); "option>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -159,7 +171,7 @@ this.ScenarioSetup(scenarioInfo);
#line 43 #line 43
testRunner.And("I should not see \"<option[^>]*>Default</option>\""); testRunner.And("I should not see \"<option[^>]*>Default</option>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
[NUnit.Framework.TestAttribute()] [NUnit.Framework.TestAttribute()]
@@ -218,8 +230,9 @@ this.ScenarioSetup(scenarioInfo);
testRunner.And("I should see \"<li[^>]*class=\"[^\"]*widgets-this-layer[^\"]*\"[^>]*>\\s*<form[^>]*>\\s*" + testRunner.And("I should see \"<li[^>]*class=\"[^\"]*widgets-this-layer[^\"]*\"[^>]*>\\s*<form[^>]*>\\s*" +
"<h3[^>]*>\\s*<a[^>]*>Flashy HTML Widget</a>\\s*</h3>\""); "<h3[^>]*>\\s*<a[^>]*>Flashy HTML Widget</a>\\s*</h3>\"");
#line hidden #line hidden
testRunner.CollectScenarioErrors(); this.ScenarioCleanup();
} }
} }
} }
#pragma warning restore
#endregion #endregion