diff --git a/project.build b/project.build
index 71f2e5da5..030bab165 100644
--- a/project.build
+++ b/project.build
@@ -4,7 +4,7 @@
-
+
@@ -30,7 +30,7 @@
-
+
diff --git a/src/Pickles/.nuget/packages.config b/src/Pickles/.nuget/packages.config
index a8f359e76..10a885e52 100644
--- a/src/Pickles/.nuget/packages.config
+++ b/src/Pickles/.nuget/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.BaseDhtmlFiles/js/Markdown.Converter.js b/src/Pickles/Pickles.BaseDhtmlFiles/js/Markdown.Converter.js
index d2d39d45f..14c7bbbbc 100644
--- a/src/Pickles/Pickles.BaseDhtmlFiles/js/Markdown.Converter.js
+++ b/src/Pickles/Pickles.BaseDhtmlFiles/js/Markdown.Converter.js
@@ -974,7 +974,7 @@ else
// attacklab: sentinel workarounds for lack of \A and \Z, safari\khtml bug
text += "~0";
- text = text.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,
+ text = text.replace(/(?:\n\n|^)((?:(?:[ ]{0}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,
function (wholeMatch, m1, m2) {
var codeblock = m1;
var nextChar = m2;
diff --git a/src/Pickles/Pickles.CommandLine/Pickles.CommandLine.csproj b/src/Pickles/Pickles.CommandLine/Pickles.CommandLine.csproj
index 3083b4b79..09d27754f 100644
--- a/src/Pickles/Pickles.CommandLine/Pickles.CommandLine.csproj
+++ b/src/Pickles/Pickles.CommandLine/Pickles.CommandLine.csproj
@@ -51,9 +51,9 @@
-
+
False
- ..\packages\System.IO.Abstractions.1.4.0.83\lib\net35\System.IO.Abstractions.dll
+ ..\packages\System.IO.Abstractions.1.4.0.86\lib\net35\System.IO.Abstractions.dll
diff --git a/src/Pickles/Pickles.CommandLine/packages.config b/src/Pickles/Pickles.CommandLine/packages.config
index 42a04b121..ac9088e38 100644
--- a/src/Pickles/Pickles.CommandLine/packages.config
+++ b/src/Pickles/Pickles.CommandLine/packages.config
@@ -5,5 +5,5 @@
-
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.MSBuild/Pickles.MSBuild.csproj b/src/Pickles/Pickles.MSBuild/Pickles.MSBuild.csproj
index 20553f871..3b7e17d90 100644
--- a/src/Pickles/Pickles.MSBuild/Pickles.MSBuild.csproj
+++ b/src/Pickles/Pickles.MSBuild/Pickles.MSBuild.csproj
@@ -43,9 +43,9 @@
-
+
False
- ..\packages\System.IO.Abstractions.1.4.0.83\lib\net35\System.IO.Abstractions.dll
+ ..\packages\System.IO.Abstractions.1.4.0.86\lib\net35\System.IO.Abstractions.dll
diff --git a/src/Pickles/Pickles.MSBuild/packages.config b/src/Pickles/Pickles.MSBuild/packages.config
index a9604006f..abc90b7a5 100644
--- a/src/Pickles/Pickles.MSBuild/packages.config
+++ b/src/Pickles/Pickles.MSBuild/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.NAnt/Pickles.NAnt.csproj b/src/Pickles/Pickles.NAnt/Pickles.NAnt.csproj
index 8f60a4bce..09c064412 100644
--- a/src/Pickles/Pickles.NAnt/Pickles.NAnt.csproj
+++ b/src/Pickles/Pickles.NAnt/Pickles.NAnt.csproj
@@ -43,9 +43,9 @@
-
+
False
- ..\packages\System.IO.Abstractions.1.4.0.83\lib\net35\System.IO.Abstractions.dll
+ ..\packages\System.IO.Abstractions.1.4.0.86\lib\net35\System.IO.Abstractions.dll
diff --git a/src/Pickles/Pickles.NAnt/packages.config b/src/Pickles/Pickles.NAnt/packages.config
index a9604006f..abc90b7a5 100644
--- a/src/Pickles/Pickles.NAnt/packages.config
+++ b/src/Pickles/Pickles.NAnt/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.PowerShell/Pickles.PowerShell.csproj b/src/Pickles/Pickles.PowerShell/Pickles.PowerShell.csproj
index a921056f2..770c43188 100644
--- a/src/Pickles/Pickles.PowerShell/Pickles.PowerShell.csproj
+++ b/src/Pickles/Pickles.PowerShell/Pickles.PowerShell.csproj
@@ -40,9 +40,9 @@
-
+
False
- ..\packages\System.IO.Abstractions.1.4.0.83\lib\net35\System.IO.Abstractions.dll
+ ..\packages\System.IO.Abstractions.1.4.0.86\lib\net35\System.IO.Abstractions.dll
diff --git a/src/Pickles/Pickles.PowerShell/packages.config b/src/Pickles/Pickles.PowerShell/packages.config
index a9604006f..abc90b7a5 100644
--- a/src/Pickles/Pickles.PowerShell/packages.config
+++ b/src/Pickles/Pickles.PowerShell/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/App.config b/src/Pickles/Pickles.Test/App.config
index 330989cd2..c727b1067 100644
--- a/src/Pickles/Pickles.Test/App.config
+++ b/src/Pickles/Pickles.Test/App.config
@@ -15,7 +15,7 @@
-
+
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingADocumentStringToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingADocumentStringToAWorksheet.cs
index aec8b1fbb..8ad42ae0b 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingADocumentStringToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingADocumentStringToAWorksheet.cs
@@ -1,7 +1,6 @@
using System;
using ClosedXML.Excel;
using NUnit.Framework;
-using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
using Should;
@@ -13,7 +12,7 @@ public class WhenAddingADocumentStringToAWorksheet : BaseFixture
[Test]
public void ThenDocumentStringAddedSuccessfully()
{
- var excelDocumentStringFormatter = Container.Resolve();
+ var excelDocumentStringFormatter = new ExcelDocumentStringFormatter();
string documentString = @"This is an example
document string for use
in testing";
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAFeatureToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAFeatureToAWorksheet.cs
index f18b7fe53..3dccedf52 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAFeatureToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAFeatureToAWorksheet.cs
@@ -3,6 +3,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioOutlineToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioOutlineToAWorksheet.cs
index e09836957..c0b27adb9 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioOutlineToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioOutlineToAWorksheet.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioToAWorksheet.cs
index e2d1d2180..44f49dac4 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAScenarioToAWorksheet.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAStepToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAStepToAWorksheet.cs
index 609afe6e3..2b59410d5 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAStepToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingAStepToAWorksheet.cs
@@ -3,6 +3,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableOfContentsToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableOfContentsToAWorksheet.cs
index 19e9b2eea..d9818c5a4 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableOfContentsToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableOfContentsToAWorksheet.cs
@@ -1,7 +1,6 @@
using System;
using ClosedXML.Excel;
using NUnit.Framework;
-using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
namespace PicklesDoc.Pickles.Test.DocumentationBuilders.Excel
@@ -15,7 +14,7 @@ public class WhenAddingATableOfContentsToAWorksheet : BaseFixture
)]
public void ThenCanAddTableOfContentsWorksheetSuccessfully()
{
- var excelTableOfContentsFormatter = Container.Resolve();
+ var excelTableOfContentsFormatter = new ExcelTableOfContentsFormatter();
using (var workbook = new XLWorkbook())
{
IXLWorksheet worksheet = workbook.AddWorksheet("SHEET1");
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableToAWorksheet.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableToAWorksheet.cs
index b4e50c25a..8e0e23373 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableToAWorksheet.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenAddingATableToAWorksheet.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenCreatingSheetNamesFromFeatures.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenCreatingSheetNamesFromFeatures.cs
index 81af45de1..65a13ebce 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenCreatingSheetNamesFromFeatures.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/Excel/WhenCreatingSheetNamesFromFeatures.cs
@@ -3,6 +3,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.Excel;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/CurrentScenarioContext.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/CurrentScenarioContext.cs
index 703efa5cd..4f4bd87d5 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/CurrentScenarioContext.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/CurrentScenarioContext.cs
@@ -1,6 +1,8 @@
using System;
using System.Xml.Linq;
using Autofac;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using TechTalk.SpecFlow;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/StepDefinitions.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/StepDefinitions.cs
index 38cabb2c7..2bb949c8b 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/StepDefinitions.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/AutomationLayer/StepDefinitions.cs
@@ -2,6 +2,7 @@
using System.Xml;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
using TechTalk.SpecFlow;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingFeatures.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingFeatures.cs
index 256a15fa4..88865d407 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingFeatures.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingFeatures.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
namespace PicklesDoc.Pickles.Test.DocumentationBuilders.HTML
@@ -14,9 +15,6 @@ public class WhenFormattingFeatures : BaseFixture
[Test]
public void ThenCanFormatDescriptionAsMarkdown()
{
- var configuration = Container.Resolve();
- configuration.TestResultsFiles = null;
-
var feature = new Feature
{
Name = "A feature",
@@ -71,9 +69,6 @@ 2. This is the second reason"
[Test]
public void ThenCanFormatMarkdownTableExtensions()
{
- var configuration = Container.Resolve();
- configuration.TestResultsFiles = null;
-
var feature = new Feature
{
Name = "A feature",
@@ -108,9 +103,6 @@ I want to see the descriptions written in markdown rendered with tables
[Test]
public void ThenCanFormatMarkdownTableExtensionsEvenIfTheyAreSomewhatMalstructured()
{
- var configuration = Container.Resolve();
- configuration.TestResultsFiles = null;
-
var feature = new Feature
{
Name = "A feature",
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenario.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenario.cs
index f3e1c276a..ff47fff3c 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenario.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenario.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
namespace PicklesDoc.Pickles.Test.DocumentationBuilders.HTML
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenarioOutlines.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenarioOutlines.cs
index 5bc1095e8..51ae687b9 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenarioOutlines.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingScenarioOutlines.cs
@@ -3,6 +3,7 @@
using Autofac;
using NUnit.Framework;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.Test.Extensions;
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingStep.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingStep.cs
index 94e53e2aa..69aec76af 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingStep.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingStep.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
namespace PicklesDoc.Pickles.Test.DocumentationBuilders.HTML
diff --git a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingTables.cs b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingTables.cs
index cb54612b9..2fbf83cb9 100644
--- a/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingTables.cs
+++ b/src/Pickles/Pickles.Test/DocumentationBuilders/HTML/WhenFormattingTables.cs
@@ -4,6 +4,7 @@
using Autofac;
using NUnit.Framework;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/FeatureTree/FeatureFileTests.cs b/src/Pickles/Pickles.Test/FeatureTree/FeatureFileTests.cs
deleted file mode 100644
index 265280b07..000000000
--- a/src/Pickles/Pickles.Test/FeatureTree/FeatureFileTests.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using System;
-using NUnit.Framework;
-using PicklesDoc.Pickles.FeatureTree;
-using PicklesDoc.Pickles.Parser;
-using Should;
-
-namespace PicklesDoc.Pickles.Test.FeatureTree
-{
- [TestFixture]
- public class FeatureFileTests : BaseFixture
- {
- private static readonly Folder parentFolder = Helpers.CreateSimpleFolder();
-
- [Test]
- public void Constructor_EmptyFeature_ThrowsArgumentException()
- {
- var exception = Assert.Throws(() => new FeatureFile("feature", parentFolder, null, FileSystem));
-
- exception.ParamName.ShouldEqual("feature");
- }
-
- [Test]
- public void Constructor_WithFeature_SetsContentProperty()
- {
- var feature = new Feature();
-
- var featureFile = new FeatureFile("filename.ext", parentFolder, feature, FileSystem);
-
- featureFile.Content.ShouldEqual(feature);
- }
-
- [Test]
- public void FeatureFile_Implements_ITreeItem()
- {
- var featureFile = new FeatureFile("filename.ext", parentFolder, new Feature(), FileSystem);
-
- featureFile.ShouldImplement();
- }
- }
-}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/FeatureTree/FileBaseTests.cs b/src/Pickles/Pickles.Test/FeatureTree/FileBaseTests.cs
deleted file mode 100644
index f14c9ef4c..000000000
--- a/src/Pickles/Pickles.Test/FeatureTree/FileBaseTests.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-using System;
-using System.IO.Abstractions;
-using NUnit.Framework;
-using PicklesDoc.Pickles.FeatureTree;
-using Should;
-using FileBase = PicklesDoc.Pickles.FeatureTree.FileBase;
-
-namespace PicklesDoc.Pickles.Test.FeatureTree
-{
- [TestFixture]
- public class FileBaseTests : BaseFixture
- {
- private static readonly Folder parentFolder = Helpers.CreateSimpleFolder();
-
- private class TestableFileBase : FileBase
- {
- public TestableFileBase(string fileName, Folder folder, IFileSystem filesSystem)
- : base(fileName, folder, filesSystem)
- {
- }
- }
-
- [Test]
- public void Constructor_EmptyFileNameAndExtension_ThrowsArgumentException()
- {
- var exception = Assert.Throws(() => new TestableFileBase(" .ext", parentFolder, FileSystem));
-
- exception.ParamName.ShouldEqual("fileName");
- }
-
- [Test]
- public void Constructor_EmptyFileName_ThrowsArgumentNullException()
- {
- var exception = Assert.Throws(() => new TestableFileBase(" ", parentFolder, FileSystem));
-
- exception.ParamName.ShouldEqual("fileName");
- }
-
- [Test]
- public void Constructor_EmptyFolder_ThrowsArgumentException()
- {
- var exception = Assert.Throws(() => new TestableFileBase("feature", null, FileSystem));
-
- exception.ParamName.ShouldEqual("folder");
- }
-
- [Test]
- public void Constructor_ExtensionOnly_ThrowsArgumentException()
- {
- var exception = Assert.Throws(() => new TestableFileBase(".ext", parentFolder, FileSystem));
-
- exception.ParamName.ShouldEqual("fileName");
- }
-
- [Test]
- public void Constructor_FileNameWithExtension_RemovesExtension()
- {
- var featureFile = new TestableFileBase("Feature.ext", parentFolder, FileSystem);
-
- featureFile.Name.ShouldEqual("Feature");
- }
-
- [Test]
- public void Constructor_NullFileName_ThrowsArgumentNullException()
- {
- var exception = Assert.Throws(() => new TestableFileBase(null, parentFolder, FileSystem));
-
- exception.ParamName.ShouldEqual("fileName");
- }
-
- [Test]
- public void Constructor_ValidFileName_SetsNameProperty()
- {
- var featureFile = new TestableFileBase("Feature", parentFolder, FileSystem);
-
- featureFile.Name.ShouldEqual("Feature");
- }
-
- [Test]
- public void Constructor_WithFeature_SetsFolderProperty()
- {
- var featureFile = new TestableFileBase("filename.ext", parentFolder, FileSystem);
-
- featureFile.Folder.ShouldEqual(parentFolder);
- }
-
- [Test]
- public void FindCommonAncestor_ItsOwnParent_ReturnsParent()
- {
- var file = new TestableFileBase("filename.ext", parentFolder, FileSystem);
-
- ITreeItem commonAncestor = file.FindCommonAncestor(parentFolder);
-
- commonAncestor.ShouldEqual(parentFolder);
- }
-
- [Test]
- public void FindCommonAncestor_NullArgument_ThrowsArgumentNullException()
- {
- var file = new TestableFileBase("filename.ext", parentFolder, FileSystem);
-
- Assert.Throws(() => file.FindCommonAncestor(null));
- }
- }
-}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/FeatureTree/FolderTests.cs b/src/Pickles/Pickles.Test/FeatureTree/FolderTests.cs
deleted file mode 100644
index e92ada9dc..000000000
--- a/src/Pickles/Pickles.Test/FeatureTree/FolderTests.cs
+++ /dev/null
@@ -1,104 +0,0 @@
-using System;
-using NUnit.Framework;
-using PicklesDoc.Pickles.FeatureTree;
-using Should;
-
-namespace PicklesDoc.Pickles.Test.FeatureTree
-{
- public class FolderTests
- {
- [Test]
- public void Constructor_NullFolderName_ThrowsArgumentNullException()
- {
- var exception = Assert.Throws(() => new Folder(null));
-
- exception.ParamName.ShouldEqual("folderName");
- }
-
- [Test]
- public void Constructor_ValidFolderName_SetsNameProperty()
- {
- var folder = new Folder("Folder Name");
-
- folder.Name.ShouldEqual("Folder Name");
- }
-
- [Test]
- public void Constructor_WhiteSpaceFolderName_ThrowsArgumentNullException()
- {
- var exception = Assert.Throws(() => new Folder(" "));
-
- exception.ParamName.ShouldEqual("folderName");
- }
-
- [Test]
- public void Constructor_WithParentFolder_SetsParentFolderProperty()
- {
- var parentFolder = new Folder("Parent Folder Name");
-
- var folder = new Folder("Folder Name", parentFolder);
-
- folder.ParentFolder.ShouldEqual(parentFolder);
- }
-
- [Test]
- public void FindCommonAncestor_NullArgument_ThrowsArgumentNullException()
- {
- var folder = new Folder("Folder Name");
-
- var exception = Assert.Throws(() => folder.FindCommonAncestor(null));
-
- exception.ParamName.ShouldEqual("other");
- }
-
- [Test]
- public void FindCommonAncestor_ItsOwnParent_ReturnsParent()
- {
- var parentFolder = new Folder("Parent Folder Name");
-
- var folder = new Folder("Folder Name", parentFolder);
-
- ITreeItem commonAncestor = folder.FindCommonAncestor(parentFolder);
-
- commonAncestor.ShouldEqual(parentFolder);
- }
-
- [Test]
- public void FindCommonAncestor_ItsOwnGrandParent_ReturnsGrandParent()
- {
- var grandParentFolder = new Folder("Grand Parent Folder Name");
-
- var parentFolder = new Folder("Parent Folder Name", grandParentFolder);
-
- var folder = new Folder("Folder Name", parentFolder);
-
- ITreeItem commonAncestor = folder.FindCommonAncestor(grandParentFolder);
-
- commonAncestor.ShouldEqual(grandParentFolder);
- }
-
- [Test]
- public void FindCommonAncestor_TwoSiblings_ReturnsParent()
- {
- var parentFolder = new Folder("Parent Folder Name");
-
- var sibling1 = new Folder("Sibling 1", parentFolder);
- var sibling2 = new Folder("Sibling 2", parentFolder);
-
- ITreeItem commonAncestor = sibling1.FindCommonAncestor(sibling2);
-
- commonAncestor.ShouldEqual(parentFolder);
- }
-
- [Test]
- public void FindCommonAncestor_AFolderAndItsChild_ReturnsTheFolder()
- {
- var folder = new Folder("Folder");
- var itsChild = new Folder("Its child", folder);
-
- ITreeItem commonAncestor = folder.FindCommonAncestor(itsChild);
-
- commonAncestor.ShouldEqual(folder);
- }
- }
-}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/FeatureTree/Helpers.cs b/src/Pickles/Pickles.Test/FeatureTree/Helpers.cs
deleted file mode 100644
index afca8791a..000000000
--- a/src/Pickles/Pickles.Test/FeatureTree/Helpers.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using PicklesDoc.Pickles.FeatureTree;
-
-namespace PicklesDoc.Pickles.Test.FeatureTree
-{
- internal static class Helpers
- {
- internal static Folder CreateSimpleFolder()
- {
- return new Folder("FolderName");
- }
- }
-}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/FeatureTree/TextFileTests.cs b/src/Pickles/Pickles.Test/FeatureTree/TextFileTests.cs
deleted file mode 100644
index 5d324be3b..000000000
--- a/src/Pickles/Pickles.Test/FeatureTree/TextFileTests.cs
+++ /dev/null
@@ -1,39 +0,0 @@
-using System;
-using NUnit.Framework;
-using PicklesDoc.Pickles.FeatureTree;
-using Should;
-
-namespace PicklesDoc.Pickles.Test.FeatureTree
-{
- [TestFixture]
- public class TextFileTests : BaseFixture
- {
- private static readonly Folder parentFolder = Helpers.CreateSimpleFolder();
-
- [Test]
- public void Constructor_EmptyFeature_ThrowsArgumentException()
- {
- var exception = Assert.Throws(() => new TextFile("Text", parentFolder, null, FileSystem));
-
- exception.ParamName.ShouldEqual("content");
- }
-
- [Test]
- public void Constructor_WithFeature_SetsContentProperty()
- {
- string text = "# Text #";
-
- var TextFile = new TextFile("filename.ext", parentFolder, text, FileSystem);
-
- TextFile.Content.ShouldEqual(text);
- }
-
- [Test]
- public void TextFile_Implements_ITreeItem()
- {
- var TextFile = new TextFile("filename.ext", parentFolder, "# Text #", FileSystem);
-
- TextFile.ShouldImplement();
- }
- }
-}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/Formatters/HtmlContentFormatterTests.cs b/src/Pickles/Pickles.Test/Formatters/HtmlContentFormatterTests.cs
index bb77f1991..eb955012b 100644
--- a/src/Pickles/Pickles.Test/Formatters/HtmlContentFormatterTests.cs
+++ b/src/Pickles/Pickles.Test/Formatters/HtmlContentFormatterTests.cs
@@ -1,10 +1,10 @@
using System;
-using System.Xml.Linq;
-using Autofac;
+//using Autofac;
using Moq;
using NUnit.Framework;
using PicklesDoc.Pickles.DirectoryCrawler;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
namespace PicklesDoc.Pickles.Test.Formatters
@@ -29,8 +29,7 @@ public void Constructor_NullHtmlIndexFormatter_ThrowsArgumentNullException()
var exception =
Assert.Throws(
() =>
- new HtmlContentFormatter(
- Container.Resolve(),
+ new HtmlContentFormatter(new Mock().Object,
null));
Assert.AreEqual("htmlIndexFormatter", exception.ParamName);
@@ -40,7 +39,7 @@ public void Constructor_NullHtmlIndexFormatter_ThrowsArgumentNullException()
public void Format_ContentIsFeatureNode_UsesHtmlFeatureFormatterWithCorrectArgument()
{
var fakeHtmlFeatureFormatter = new Mock();
- var formatter = new HtmlContentFormatter(fakeHtmlFeatureFormatter.Object, Container.Resolve());
+ var formatter = new HtmlContentFormatter(fakeHtmlFeatureFormatter.Object, new HtmlIndexFormatter());
var featureNode = new FeatureNode(
FileSystem.FileInfo.FromFileName(@"c:\temp\test.feature"),
diff --git a/src/Pickles/Pickles.Test/Formatters/HtmlScenarioFormatterTests.cs b/src/Pickles/Pickles.Test/Formatters/HtmlScenarioFormatterTests.cs
index 14faa1860..b66137616 100644
--- a/src/Pickles/Pickles.Test/Formatters/HtmlScenarioFormatterTests.cs
+++ b/src/Pickles/Pickles.Test/Formatters/HtmlScenarioFormatterTests.cs
@@ -4,6 +4,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
namespace PicklesDoc.Pickles.Test.Formatters
diff --git a/src/Pickles/Pickles.Test/Formatters/HtmlScenarioOutlineFormatterTests.cs b/src/Pickles/Pickles.Test/Formatters/HtmlScenarioOutlineFormatterTests.cs
index 027dfbb39..f094b9a7d 100644
--- a/src/Pickles/Pickles.Test/Formatters/HtmlScenarioOutlineFormatterTests.cs
+++ b/src/Pickles/Pickles.Test/Formatters/HtmlScenarioOutlineFormatterTests.cs
@@ -1,10 +1,14 @@
using System;
using System.Collections.Generic;
using System.Xml.Linq;
+
+using Moq;
+
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
-using PicklesDoc.Pickles.Parser;
+using PicklesDoc.Pickles.ObjectModel;
+using PicklesDoc.Pickles.TestFrameworks;
namespace PicklesDoc.Pickles.Test.Formatters
{
@@ -16,10 +20,16 @@ public class HtmlScenarioOutlineFormatterTests : BaseFixture
[SetUp]
public void Setup()
{
- this.formatter = new HtmlScenarioOutlineFormatter(Container.Resolve(),
- Container.Resolve(),
- Container.Resolve(),
- Container.Resolve());
+ var fakeTestResults = new Mock();
+ fakeTestResults.Setup(ftr => ftr.SupportsExampleResults).Returns(false);
+
+
+ this.formatter = new HtmlScenarioOutlineFormatter(
+ Container.Resolve(),
+ Container.Resolve(),
+ Container.Resolve(),
+ Container.Resolve(),
+ fakeTestResults.Object);
}
#endregion
@@ -28,8 +38,8 @@ public void Setup()
private static ScenarioOutline BuildMinimalScenarioOutline()
{
- var examples = new List();
- examples.Add(new Example
+ var examples = new List();
+ examples.Add(new Example
{
Description = "My Example Description",
TableArgument = new Table
diff --git a/src/Pickles/Pickles.Test/Formatters/JSON/when_creating_a_feature_with_meta_info.cs b/src/Pickles/Pickles.Test/Formatters/JSON/when_creating_a_feature_with_meta_info.cs
index b9d91f8ff..1e77aa027 100644
--- a/src/Pickles/Pickles.Test/Formatters/JSON/when_creating_a_feature_with_meta_info.cs
+++ b/src/Pickles/Pickles.Test/Formatters/JSON/when_creating_a_feature_with_meta_info.cs
@@ -3,6 +3,7 @@
using NUnit.Framework;
using PicklesDoc.Pickles.DirectoryCrawler;
using PicklesDoc.Pickles.DocumentationBuilders.JSON;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should.Fluent;
diff --git a/src/Pickles/Pickles.Test/ParserTests.cs b/src/Pickles/Pickles.Test/ParserTests.cs
index 1785c6927..ca7e8fb43 100644
--- a/src/Pickles/Pickles.Test/ParserTests.cs
+++ b/src/Pickles/Pickles.Test/ParserTests.cs
@@ -3,6 +3,7 @@
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
namespace PicklesDoc.Pickles.Test
diff --git a/src/Pickles/Pickles.Test/Pickles.Test.csproj b/src/Pickles/Pickles.Test/Pickles.Test.csproj
index 72f9002a3..efe6d46dd 100644
--- a/src/Pickles/Pickles.Test/Pickles.Test.csproj
+++ b/src/Pickles/Pickles.Test/Pickles.Test.csproj
@@ -150,7 +150,7 @@
False
- ..\packages\Newtonsoft.Json.6.0.1\lib\net35\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.6.0.3\lib\net35\Newtonsoft.Json.dll
False
@@ -170,13 +170,13 @@
-
+
False
- ..\packages\System.IO.Abstractions.1.4.0.83\lib\net35\System.IO.Abstractions.dll
+ ..\packages\System.IO.Abstractions.1.4.0.86\lib\net35\System.IO.Abstractions.dll
-
+
False
- ..\packages\System.IO.Abstractions.TestingHelpers.1.4.0.83\lib\net35\System.IO.Abstractions.TestingHelpers.dll
+ ..\packages\System.IO.Abstractions.TestingHelpers.1.4.0.86\lib\net35\System.IO.Abstractions.TestingHelpers.dll
@@ -226,13 +226,6 @@
-
-
-
-
-
- Code
-
diff --git a/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnNUnitExampleRow.cs b/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnNUnitExampleRow.cs
index e04893cfa..1b4571311 100644
--- a/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnNUnitExampleRow.cs
+++ b/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnNUnitExampleRow.cs
@@ -2,6 +2,8 @@
using System.Text.RegularExpressions;
using NUnit.Framework;
using Autofac;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnXUnitExampleRow.cs b/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnXUnitExampleRow.cs
index 160ee3cbf..3dfb1511f 100644
--- a/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnXUnitExampleRow.cs
+++ b/src/Pickles/Pickles.Test/WhenDeterminingTheSignatureOfAnXUnitExampleRow.cs
@@ -2,6 +2,8 @@
using System.Text.RegularExpressions;
using NUnit.Framework;
using Autofac;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenGeneratingPathsFromFeaturesToDitaFiles.cs b/src/Pickles/Pickles.Test/WhenGeneratingPathsFromFeaturesToDitaFiles.cs
index 3f82e8b68..18a5e38de 100644
--- a/src/Pickles/Pickles.Test/WhenGeneratingPathsFromFeaturesToDitaFiles.cs
+++ b/src/Pickles/Pickles.Test/WhenGeneratingPathsFromFeaturesToDitaFiles.cs
@@ -3,6 +3,7 @@
using NUnit.Framework;
using PicklesDoc.Pickles.DirectoryCrawler;
using PicklesDoc.Pickles.DocumentationBuilders.DITA;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenParsingCucumberJsonResultsFile.cs b/src/Pickles/Pickles.Test/WhenParsingCucumberJsonResultsFile.cs
index ec7d2fa28..1bed9db4c 100644
--- a/src/Pickles/Pickles.Test/WhenParsingCucumberJsonResultsFile.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingCucumberJsonResultsFile.cs
@@ -1,5 +1,7 @@
using System;
using NUnit.Framework;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenParsingFeatureFiles.cs b/src/Pickles/Pickles.Test/WhenParsingFeatureFiles.cs
index e4198209d..0b2261f87 100644
--- a/src/Pickles/Pickles.Test/WhenParsingFeatureFiles.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingFeatureFiles.cs
@@ -1,6 +1,8 @@
using System.Linq;
using NUnit.Framework;
using Autofac;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using System;
diff --git a/src/Pickles/Pickles.Test/WhenParsingLocalizedFeatureFiles.cs b/src/Pickles/Pickles.Test/WhenParsingLocalizedFeatureFiles.cs
index 1d02a8313..a3ed7b7ae 100644
--- a/src/Pickles/Pickles.Test/WhenParsingLocalizedFeatureFiles.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingLocalizedFeatureFiles.cs
@@ -1,6 +1,8 @@
using System;
using System.Linq;
using NUnit.Framework;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenParsingMsTestResultsFile.cs b/src/Pickles/Pickles.Test/WhenParsingMsTestResultsFile.cs
index c4d915b33..d34d4e2f6 100644
--- a/src/Pickles/Pickles.Test/WhenParsingMsTestResultsFile.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingMsTestResultsFile.cs
@@ -1,5 +1,7 @@
using System;
using NUnit.Framework;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenParsingMultipleMsTestTestResultsFiles.cs b/src/Pickles/Pickles.Test/WhenParsingMultipleMsTestTestResultsFiles.cs
index 5b60aac44..700e5e166 100644
--- a/src/Pickles/Pickles.Test/WhenParsingMultipleMsTestTestResultsFiles.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingMultipleMsTestTestResultsFiles.cs
@@ -1,5 +1,7 @@
using System;
using NUnit.Framework;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenParsingMultipleTestResultsTests.cs b/src/Pickles/Pickles.Test/WhenParsingMultipleTestResultsTests.cs
index 1bac70cbc..4aa1b905b 100644
--- a/src/Pickles/Pickles.Test/WhenParsingMultipleTestResultsTests.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingMultipleTestResultsTests.cs
@@ -18,6 +18,7 @@
//
// --------------------------------------------------------------------------------------------------------------------
+using System;
using System.Collections.Generic;
using System.IO.Abstractions;
@@ -25,6 +26,7 @@
using NUnit.Framework;
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
@@ -58,14 +60,19 @@ private static MultipleTestResults CreateMultipleTestResults(ITestResults testRe
private class TestableMultipleTestResults : MultipleTestResults
{
public TestableMultipleTestResults(IEnumerable testResults)
- : base(testResults)
+ : base(false, testResults)
{
}
+ public override TestResult GetExampleResult(ScenarioOutline scenario, string[] exampleValues)
+ {
+ throw new NotSupportedException();
+ }
+
protected override ITestResults ConstructSingleTestResult(FileInfoBase fileInfo)
{
// not needed since we use the other constructor
- throw new System.NotSupportedException();
+ throw new NotSupportedException();
}
}
diff --git a/src/Pickles/Pickles.Test/WhenParsingNUnitResultsFile.cs b/src/Pickles/Pickles.Test/WhenParsingNUnitResultsFile.cs
index 7303646a2..42d57beb6 100644
--- a/src/Pickles/Pickles.Test/WhenParsingNUnitResultsFile.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingNUnitResultsFile.cs
@@ -1,7 +1,8 @@
using System;
using NUnit.Framework;
-using PicklesDoc.Pickles.Parser;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
@@ -144,17 +145,17 @@ public void ThenCanReadFailedFeatureResultSuccessfully()
private Feature FailingFeature()
{
- return new Feature() {Name = "Failing"};
+ return new Feature {Name = "Failing"};
}
private Feature InconclusiveFeature()
{
- return new Feature() { Name = "Inconclusive" };
+ return new Feature { Name = "Inconclusive" };
}
private Feature PassingFeature()
{
- return new Feature() { Name = "Passing" };
+ return new Feature { Name = "Passing" };
}
[Test]
@@ -183,5 +184,106 @@ public void ThenCanReadNotFoundFeatureCorrectly()
result.WasExecuted.ShouldBeFalse();
result.WasSuccessful.ShouldBeFalse();
}
+
+ [Test]
+ public void ThenCanReadIndividualResultsFromScenarioOutline_AllPass_ShouldBeTestResultPassed()
+ {
+ var results = ParseResultsFile();
+ results.SetExampleSignatureBuilder(new NUnitExampleSignatureBuilder());
+
+ var feature = new Feature { Name = "Scenario Outlines" };
+
+ var scenarioOutline = new ScenarioOutline { Name = "This is a scenario outline where all scenarios pass", Feature = feature };
+
+ TestResult exampleResultOutline = results.GetScenarioOutlineResult(scenarioOutline);
+ exampleResultOutline.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult1 = results.GetExampleResult(scenarioOutline, new[] { "pass_1" });
+ exampleResult1.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult2 = results.GetExampleResult(scenarioOutline, new[] { "pass_2" });
+ exampleResult2.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult3 = results.GetExampleResult(scenarioOutline, new[] { "pass_3" });
+ exampleResult3.ShouldEqual(TestResult.Passed);
+ }
+
+ [Test]
+ public void ThenCanReadIndividualResultsFromScenarioOutline_OneInconclusive_ShouldBeTestResultInconclusive()
+ {
+ var results = ParseResultsFile();
+ results.SetExampleSignatureBuilder(new NUnitExampleSignatureBuilder());
+
+ var feature = new Feature { Name = "Scenario Outlines" };
+
+ var scenarioOutline = new ScenarioOutline { Name = "This is a scenario outline where one scenario is inconclusive", Feature = feature };
+
+ TestResult exampleResultOutline = results.GetScenarioOutlineResult(scenarioOutline);
+ exampleResultOutline.ShouldEqual(TestResult.Inconclusive);
+
+ TestResult exampleResult1 = results.GetExampleResult(scenarioOutline, new[] { "pass_1" });
+ exampleResult1.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult2 = results.GetExampleResult(scenarioOutline, new[] { "pass_2" });
+ exampleResult2.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult3 = results.GetExampleResult(scenarioOutline, new[] { "inconclusive_1" });
+ exampleResult3.ShouldEqual(TestResult.Inconclusive);
+ }
+
+ [Test]
+ public void ThenCanReadIndividualResultsFromScenarioOutline_OneFailed_ShouldBeTestResultFailed()
+ {
+ var results = ParseResultsFile();
+ results.SetExampleSignatureBuilder(new NUnitExampleSignatureBuilder());
+
+ var feature = new Feature { Name = "Scenario Outlines" };
+
+ var scenarioOutline = new ScenarioOutline { Name = "This is a scenario outline where one scenario fails", Feature = feature };
+
+ TestResult exampleResultOutline = results.GetScenarioOutlineResult(scenarioOutline);
+ exampleResultOutline.ShouldEqual(TestResult.Failed);
+
+ TestResult exampleResult1 = results.GetExampleResult(scenarioOutline, new[] { "pass_1" });
+ exampleResult1.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult2 = results.GetExampleResult(scenarioOutline, new[] { "pass_2" });
+ exampleResult2.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult3 = results.GetExampleResult(scenarioOutline, new[] { "fail_1" });
+ exampleResult3.ShouldEqual(TestResult.Failed);
+ }
+
+ [Test]
+ public void ThenCanReadIndividualResultsFromScenarioOutline_MultipleExampleSections_ShouldBeTestResultFailed()
+ {
+ var results = ParseResultsFile();
+ results.SetExampleSignatureBuilder(new NUnitExampleSignatureBuilder());
+
+ var feature = new Feature { Name = "Scenario Outlines" };
+
+ var scenarioOutline = new ScenarioOutline { Name = "And we can go totally bonkers with multiple example sections.", Feature = feature };
+
+ TestResult exampleResultOutline = results.GetScenarioOutlineResult(scenarioOutline);
+ exampleResultOutline.ShouldEqual(TestResult.Failed);
+
+ TestResult exampleResult1 = results.GetExampleResult(scenarioOutline, new[] { "pass_1" });
+ exampleResult1.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult2 = results.GetExampleResult(scenarioOutline, new[] { "pass_2" });
+ exampleResult2.ShouldEqual(TestResult.Passed);
+
+ TestResult exampleResult3 = results.GetExampleResult(scenarioOutline, new[] { "inconclusive_1" });
+ exampleResult3.ShouldEqual(TestResult.Inconclusive);
+
+ TestResult exampleResult4 = results.GetExampleResult(scenarioOutline, new[] { "inconclusive_2" });
+ exampleResult4.ShouldEqual(TestResult.Inconclusive);
+
+ TestResult exampleResult5 = results.GetExampleResult(scenarioOutline, new[] { "fail_1" });
+ exampleResult5.ShouldEqual(TestResult.Failed);
+
+ TestResult exampleResult6 = results.GetExampleResult(scenarioOutline, new[] { "fail_2" });
+ exampleResult6.ShouldEqual(TestResult.Failed);
+ }
}
}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/WhenParsingSpecRunTestResultsFile.cs b/src/Pickles/Pickles.Test/WhenParsingSpecRunTestResultsFile.cs
index bc6b921d5..82b97eb89 100644
--- a/src/Pickles/Pickles.Test/WhenParsingSpecRunTestResultsFile.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingSpecRunTestResultsFile.cs
@@ -1,5 +1,7 @@
using System;
using NUnit.Framework;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenParsingxUnitResultsFile.cs b/src/Pickles/Pickles.Test/WhenParsingxUnitResultsFile.cs
index bd99df1be..41cce06d5 100644
--- a/src/Pickles/Pickles.Test/WhenParsingxUnitResultsFile.cs
+++ b/src/Pickles/Pickles.Test/WhenParsingxUnitResultsFile.cs
@@ -1,6 +1,8 @@
using System;
using NUnit.Framework;
+
+using PicklesDoc.Pickles.ObjectModel;
using PicklesDoc.Pickles.Parser;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
diff --git a/src/Pickles/Pickles.Test/WhenResolvingTestResults.cs b/src/Pickles/Pickles.Test/WhenResolvingTestResults.cs
index be7f975b4..70753c973 100644
--- a/src/Pickles/Pickles.Test/WhenResolvingTestResults.cs
+++ b/src/Pickles/Pickles.Test/WhenResolvingTestResults.cs
@@ -1,19 +1,16 @@
using System;
-using System.IO.Abstractions.TestingHelpers;
-using System.Reflection;
using NUnit.Framework;
using Autofac;
using PicklesDoc.Pickles.TestFrameworks;
using Should;
-using StreamReader = System.IO.StreamReader;
-using StreamWriter = System.IO.StreamWriter;
-
namespace PicklesDoc.Pickles.Test
{
[TestFixture]
public class WhenResolvingTestResults : BaseFixture
{
+ private const string TestResultsResourcePrefix = "PicklesDoc.Pickles.Test.";
+
[Test]
public void ThenCanResolveAsSingletonWhenNoTestResultsSelected()
{
@@ -28,20 +25,13 @@ public void ThenCanResolveAsSingletonWhenNoTestResultsSelected()
}
[Test]
- public void ThenCanResolveAsSingletonWhenTestResultsAreMSTest()
+ public void ThenCanResolveAsSingletonWhenTestResultsAreMsTest()
{
- const string resultsFilename = "results-example-mstest.trx";
- using (
- var input =
- new StreamReader(
- Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-mstest.trx", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-mstest.trx"));
var configuration = Container.Resolve();
configuration.TestResultsFormat = TestResultsFormat.MsTest;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-mstest.trx") };
var item1 = Container.Resolve();
var item2 = Container.Resolve();
@@ -56,18 +46,11 @@ public void ThenCanResolveAsSingletonWhenTestResultsAreMSTest()
[Test]
public void ThenCanResolveAsSingletonWhenTestResultsAreNUnit()
{
- const string resultsFilename = "results-example-nunit.xml";
- using (
- var input =
- new StreamReader(
- Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-nunit.xml", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-nunit.xml"));
var configuration = Container.Resolve();
configuration.TestResultsFormat = TestResultsFormat.NUnit;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-nunit.xml") };
var item1 = Container.Resolve();
var item2 = Container.Resolve();
@@ -82,79 +65,58 @@ public void ThenCanResolveAsSingletonWhenTestResultsAreNUnit()
[Test]
public void ThenCanResolveAsSingletonWhenTestResultsArexUnit()
{
- const string resultsFilename = "results-example-xunit.xml";
- using (
- var input =
- new StreamReader(
- Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
-
- var configuration = Container.Resolve();
- configuration.TestResultsFormat = TestResultsFormat.xUnit;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
-
- var item1 = Container.Resolve();
- var item2 = Container.Resolve();
-
- item1.ShouldNotBeNull();
- item1.ShouldBeType();
- item2.ShouldNotBeNull();
- item2.ShouldBeType();
- item1.ShouldBeSameAs(item2);
+ FileSystem.AddFile("results-example-xunit.xml", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-xunit.xml"));
+
+ var configuration = Container.Resolve();
+ configuration.TestResultsFormat = TestResultsFormat.xUnit;
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-xunit.xml") };
+
+ var item1 = Container.Resolve();
+ var item2 = Container.Resolve();
+
+ item1.ShouldNotBeNull();
+ item1.ShouldBeType();
+ item2.ShouldNotBeNull();
+ item2.ShouldBeType();
+ item1.ShouldBeSameAs(item2);
}
[Test]
public void ThenCanResolveAsSingletonWhenTestResultsAreCucumberJson()
{
- const string resultsFilename = "results-example-json.json";
- using (
- var input =
- new StreamReader(
- Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
-
- var configuration = Container.Resolve();
- configuration.TestResultsFormat = TestResultsFormat.CucumberJson;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
-
- var item1 = Container.Resolve();
- var item2 = Container.Resolve();
-
- item1.ShouldNotBeNull();
- item1.ShouldBeType();
- item2.ShouldNotBeNull();
- item2.ShouldBeType();
- item1.ShouldBeSameAs(item2);
+ FileSystem.AddFile("results-example-json.json", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-json.json"));
+
+ var configuration = Container.Resolve();
+ configuration.TestResultsFormat = TestResultsFormat.CucumberJson;
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-json.json") };
+
+ var item1 = Container.Resolve();
+ var item2 = Container.Resolve();
+
+ item1.ShouldNotBeNull();
+ item1.ShouldBeType();
+ item2.ShouldNotBeNull();
+ item2.ShouldBeType();
+ item1.ShouldBeSameAs(item2);
}
[Test]
public void ThenCanResolveAsSingletonWhenTestResultsAreSpecrun()
{
- const string resultsFilename = "results-example-specrun.html";
- using (
- var input =
- new StreamReader(
- Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
-
- var configuration = Container.Resolve();
- configuration.TestResultsFormat = TestResultsFormat.SpecRun;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
-
- var item1 = Container.Resolve();
- var item2 = Container.Resolve();
-
- item1.ShouldNotBeNull();
- item1.ShouldBeType();
- item2.ShouldNotBeNull();
- item2.ShouldBeType();
- item1.ShouldBeSameAs(item2);
+ FileSystem.AddFile("results-example-specrun.html", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-specrun.html"));
+
+ var configuration = Container.Resolve();
+ configuration.TestResultsFormat = TestResultsFormat.SpecRun;
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-specrun.html") };
+
+ var item1 = Container.Resolve();
+ var item2 = Container.Resolve();
+
+ item1.ShouldNotBeNull();
+ item1.ShouldBeType();
+ item2.ShouldNotBeNull();
+ item2.ShouldBeType();
+ item1.ShouldBeSameAs(item2);
}
[Test]
@@ -168,17 +130,13 @@ public void ThenCanResolveWhenNoTestResultsSelected()
[Test]
- public void ThenCanResolveWhenTestResultsAreMSTest()
+ public void ThenCanResolveWhenTestResultsAreMsTest()
{
- const string resultsFilename = "results-example-mstest.trx";
- using (var input = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-mstest.trx", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-mstest.trx"));
var configuration = Container.Resolve();
configuration.TestResultsFormat = TestResultsFormat.MsTest;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-mstest.trx") };
var item = Container.Resolve();
@@ -189,15 +147,11 @@ public void ThenCanResolveWhenTestResultsAreMSTest()
[Test]
public void ThenCanResolveWhenTestResultsAreNUnit()
{
- const string resultsFilename = "results-example-nunit.xml";
- using (var input = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-nunit.xml", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-nunit.xml"));
var configuration = Container.Resolve();
configuration.TestResultsFormat = TestResultsFormat.NUnit;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-nunit.xml") };
var item = Container.Resolve();
@@ -208,58 +162,46 @@ public void ThenCanResolveWhenTestResultsAreNUnit()
[Test]
public void ThenCanResolveWhenTestResultsArexUnit()
{
- const string resultsFilename = "results-example-xunit.xml";
- using (var input = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-xunit.xml", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-xunit.xml"));
- var configuration = Container.Resolve();
- configuration.TestResultsFormat = TestResultsFormat.xUnit;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ var configuration = Container.Resolve();
+ configuration.TestResultsFormat = TestResultsFormat.xUnit;
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-xunit.xml") };
- var item = Container.Resolve();
+ var item = Container.Resolve();
- Assert.NotNull(item);
- Assert.IsInstanceOf(item);
+ Assert.NotNull(item);
+ Assert.IsInstanceOf(item);
}
[Test]
public void ThenCanResolveWhenTestResultsAreCucumberJson()
{
- const string resultsFilename = "results-example-json.json";
- using (var input = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-json.json", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-json.json"));
- var configuration = Container.Resolve();
- configuration.TestResultsFormat = TestResultsFormat.CucumberJson;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ var configuration = Container.Resolve();
+ configuration.TestResultsFormat = TestResultsFormat.CucumberJson;
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-json.json") };
- var item = Container.Resolve();
+ var item = Container.Resolve();
- Assert.NotNull(item);
- Assert.IsInstanceOf(item);
+ Assert.NotNull(item);
+ Assert.IsInstanceOf(item);
}
[Test]
public void ThenCanResolveWhenTestResultsAreSpecrun()
{
- const string resultsFilename = "results-example-specrun.html";
- using (var input = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("PicklesDoc.Pickles.Test." + resultsFilename)))
- {
- FileSystem.AddFile(resultsFilename, new MockFileData(input.ReadToEnd()));
- }
+ FileSystem.AddFile("results-example-specrun.html", RetrieveContentOfFileFromResources(TestResultsResourcePrefix + "results-example-specrun.html"));
- var configuration = Container.Resolve();
- configuration.TestResultsFormat = TestResultsFormat.SpecRun;
- configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName(resultsFilename) };
+ var configuration = Container.Resolve();
+ configuration.TestResultsFormat = TestResultsFormat.SpecRun;
+ configuration.TestResultsFiles = new[] { FileSystem.FileInfo.FromFileName("results-example-specrun.html") };
- var item = Container.Resolve();
+ var item = Container.Resolve();
- Assert.NotNull(item);
- Assert.IsInstanceOf(item);
+ Assert.NotNull(item);
+ Assert.IsInstanceOf(item);
}
}
}
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/WhenWorkingWithHtmlResources.cs b/src/Pickles/Pickles.Test/WhenWorkingWithHtmlResources.cs
index 082aaeff6..998739b10 100644
--- a/src/Pickles/Pickles.Test/WhenWorkingWithHtmlResources.cs
+++ b/src/Pickles/Pickles.Test/WhenWorkingWithHtmlResources.cs
@@ -1,7 +1,6 @@
using System;
using System.Linq;
using NUnit.Framework;
-using Autofac;
using PicklesDoc.Pickles.DocumentationBuilders.HTML;
using Should;
@@ -13,10 +12,8 @@ public class WhenWorkingWithHtmlResources : BaseFixture
[Test]
public void ThenCanDetectAllImagesSuccessfully()
{
- var configuration = Container.Resolve();
- configuration.OutputFolder = configuration.OutputFolder = FileSystem.DirectoryInfo.FromDirectoryName(@"c:\");
+ var htmlResources = this.CreateHtmlResourceSet();
- var htmlResources = Container.Resolve();
HtmlResource[] images = htmlResources.Images.ToArray();
images.Length.ShouldEqual(3);
@@ -25,13 +22,18 @@ public void ThenCanDetectAllImagesSuccessfully()
images.Any(image => image.File == "inconclusive.png").ShouldBeTrue();
}
+ private HtmlResourceSet CreateHtmlResourceSet()
+ {
+ var configuration = new Configuration { OutputFolder = FileSystem.DirectoryInfo.FromDirectoryName(@"c:\") };
+ var htmlResources = new HtmlResourceSet(configuration, FileSystem);
+ return htmlResources;
+ }
+
[Test]
public void ThenCanDetectAllResourcesSuccessfully()
{
- var configuration = Container.Resolve();
- configuration.OutputFolder = configuration.OutputFolder = FileSystem.DirectoryInfo.FromDirectoryName(@"c:\");
-
- var htmlResources = Container.Resolve();
+ var htmlResources = this.CreateHtmlResourceSet();
+
HtmlResource[] resources = htmlResources.All.ToArray();
resources.Length.ShouldEqual(9);
@@ -49,10 +51,8 @@ public void ThenCanDetectAllResourcesSuccessfully()
[Test]
public void ThenCanDetectAllScriptsSuccessfully()
{
- var configuration = Container.Resolve();
- configuration.OutputFolder = configuration.OutputFolder = FileSystem.DirectoryInfo.FromDirectoryName(@"c:\");
+ var htmlResources = this.CreateHtmlResourceSet();
- var htmlResources = Container.Resolve();
HtmlResource[] scripts = htmlResources.Scripts.ToArray();
scripts.Length.ShouldEqual(2);
@@ -63,10 +63,8 @@ public void ThenCanDetectAllScriptsSuccessfully()
[Test]
public void ThenCanDetectAllStylesheetsSuccessfully()
{
- var configuration = Container.Resolve();
- configuration.OutputFolder = configuration.OutputFolder = FileSystem.DirectoryInfo.FromDirectoryName(@"c:\");
+ var htmlResources = this.CreateHtmlResourceSet();
- var htmlResources = Container.Resolve();
HtmlResource[] stylesheets = htmlResources.Stylesheets.ToArray();
stylesheets.Length.ShouldEqual(6);
diff --git a/src/Pickles/Pickles.Test/packages.config b/src/Pickles/Pickles.Test/packages.config
index a1fae34f5..a7101334b 100644
--- a/src/Pickles/Pickles.Test/packages.config
+++ b/src/Pickles/Pickles.Test/packages.config
@@ -6,12 +6,12 @@
-
+
-
-
+
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/results-example-mstest.trx b/src/Pickles/Pickles.Test/results-example-mstest.trx
index aff56882b..369ef8de2 100644
--- a/src/Pickles/Pickles.Test/results-example-mstest.trx
+++ b/src/Pickles/Pickles.Test/results-example-mstest.trx
@@ -1,179 +1,264 @@
-
-
-
+
+
+ These are default test settings for a local test run.
+
+
-
+
-
+
-
- Not automated scenario 3
-
+
+ This is a scenario outline where all scenarios pass
+
FeatureTitle
- Not Automated At All
+ Scenario Outlines
+
+
+ VariantName
+ pass_3
+
+
+ Parameter:result
+ pass_3
-
+
-
- Failing Feature Failing Scenario
-
+
+ This is a scenario outline where all scenarios pass
+
FeatureTitle
- Failing
+ Scenario Outlines
+
+
+ VariantName
+ pass_2
+
+
+ Parameter:result
+ pass_2
-
+
-
- Not automated scenario 2
-
+
+ And we can go totally bonkers with multiple example sections.
+
FeatureTitle
- Not Automated At All
+ Scenario Outlines
+
+
+ VariantName
+ fail_2
+
+
+ Parameter:result
+ fail_2
-
+
-
- Inconclusive Feature Passing Scenario
-
+
+ Not automated scenario 3
+
FeatureTitle
- Inconclusive
+ Not Automated At All
-
+
-
- Add two numbers
-
-
-
-
+
+ Failing Feature Inconclusive Scenario
+
FeatureTitle
- Addition
+ Failing
-
+
Inconclusive Feature Inconclusive Scenario
-
+
FeatureTitle
Inconclusive
-
+
-
- Fail to add two numbers
-
-
-
-
+
+ Failing Feature Passing Scenario
+
FeatureTitle
- Addition
+ Failing
-
+
-
- Not automated scenario 1
-
+
+ This is a scenario outline where one scenario fails
+
FeatureTitle
- Not Automated At All
+ Scenario Outlines
+
+
+ VariantName
+ pass_2
+
+
+ Parameter:result
+ pass_2
-
+
-
+
+ And we can go totally bonkers with multiple example sections.
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ fail_1
+
+
+ Parameter:result
+ fail_1
+
+
+
+
+
Adding several numbers
-
+
- Parameter:third number
- 90
+ Parameter:first number
+ 60
VariantName
- 40
+ 60
+
+
+ Parameter:third number
+ 130
Parameter:second number
- 50
+ 70
FeatureTitle
Addition
- Parameter:first number
- 40
+ Parameter:result
+ 260
+
+
+
+
+
+ And we can go totally bonkers with multiple example sections.
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ pass_2
Parameter:result
- 180
+ pass_2
-
+
-
- Failing Feature Inconclusive Scenario
-
+
+ Failing Feature Failing Scenario
+
FeatureTitle
Failing
-
+
-
+
+ This is a scenario outline where one scenario is inconclusive
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ pass_1
+
+
+ Parameter:result
+ pass_1
+
+
+
+
+
Adding several numbers
-
+
Parameter:first number
- 60
+ 40
VariantName
- 60
+ 40
Parameter:third number
- 130
+ 90
Parameter:second number
- 70
+ 50
FeatureTitle
@@ -181,43 +266,245 @@
Parameter:result
- 260
+ 180
-
+
-
- Not automated adding two numbers
-
+
+ This is a scenario outline where one scenario is inconclusive
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ inconclusive_1
+
+
+ Parameter:result
+ inconclusive_1
+
+
+
+
+
+ Inconclusive Feature Passing Scenario
+
+
+
+ FeatureTitle
+ Inconclusive
+
+
+
+
+
+ Add two numbers
+
+
+
+
FeatureTitle
Addition
-
+
+
+
+ This is a scenario outline where one scenario fails
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ fail_1
+
+
+ Parameter:result
+ fail_1
+
+
+
+
+
+ And we can go totally bonkers with multiple example sections.
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ inconclusive_2
+
+
+ Parameter:result
+ inconclusive_2
+
+
+
+
+
+ This is a scenario outline where one scenario is inconclusive
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ pass_2
+
+
+ Parameter:result
+ pass_2
+
+
+
+
+
+ Not automated scenario 2
+
+
+
+ FeatureTitle
+ Not Automated At All
+
+
+
+
+
+ This is a scenario outline where all scenarios pass
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ pass_1
+
+
+ Parameter:result
+ pass_1
+
+
+
+
+
+ And we can go totally bonkers with multiple example sections.
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ pass_1
+
+
+ Parameter:result
+ pass_1
+
+
+
Passing Feature Passing Scenario
-
+
FeatureTitle
Passing
-
+
-
- Failing Feature Passing Scenario
-
+
+ Not automated scenario 1
+
FeatureTitle
- Failing
+ Not Automated At All
+
+
+
+
+
+ This is a scenario outline where one scenario fails
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ pass_1
+
+
+ Parameter:result
+ pass_1
+
+
+
+
+
+ Fail to add two numbers
+
+
+
+
+
+
+ FeatureTitle
+ Addition
-
+
+
+
+ Not automated adding two numbers
+
+
+
+ FeatureTitle
+ Addition
+
+
+
+
+
+ And we can go totally bonkers with multiple example sections.
+
+
+
+ FeatureTitle
+ Scenario Outlines
+
+
+ VariantName
+ inconclusive_1
+
+
+ Parameter:result
+ inconclusive_1
+
+
+
@@ -225,23 +512,38 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Pickles/Pickles.Test/results-example-nunit.xml b/src/Pickles/Pickles.Test/results-example-nunit.xml
index f5c3b008c..5e2f3f921 100644
--- a/src/Pickles/Pickles.Test/results-example-nunit.xml
+++ b/src/Pickles/Pickles.Test/results-example-nunit.xml
@@ -1,48 +1,50 @@
-
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
-
+ d__7`2.MoveNext()
+at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
+at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
+at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.GetExecuteArguments(BindingMatch match)
+at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.ExecuteStep(StepInstance stepInstance)
+at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.OnAfterLastStep()
+at Pickles.TestHarness.nunit.AdditionFeature.ScenarioCleanup() in c:\Dev\Code\pickles-testresults\TestHarness\nunit\Addition.feature.cs:line 0
+at Pickles.TestHarness.nunit.AdditionFeature.FailToAddTwoNumbers() in c:\Dev\Code\pickles-testresults\TestHarness\nunit\Addition.feature:line 34
]]>
@@ -51,7 +53,7 @@ w Pickles.TestHarness.nunit.AdditionFeature.FailToAddTwoNumbers() w c:\Users\ast
-
+
-
+
-
+
-
+
-
-
+
-
+
-
+
-
+
-
+
-
+
@@ -128,9 +139,9 @@ w Pickles.TestHarness.nunit.MinimalFeatures.FailingFeature.FailingFeatureFailing
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Pickles/Pickles.Test/results-example-specrun.html b/src/Pickles/Pickles.Test/results-example-specrun.html
index 9250c218e..878764406 100644
--- a/src/Pickles/Pickles.Test/results-example-specrun.html
+++ b/src/Pickles/Pickles.Test/results-example-specrun.html
@@ -94,6 +94,71 @@
</scenario>
</scenarios>
</feature>
+ <feature>
+ <title>Scenario Outlines</title>
+ <scenarios>
+ <scenario>
+ <title>This is a scenario outline where all scenarios pass, pass_1</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where all scenarios pass, pass_2</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where all scenarios pass, pass_3</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where one scenario is inconclusive, pass_1</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where one scenario is inconclusive, pass_2</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where one scenario is inconclusive, inconclusive_1</title>
+ <result>Pending</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where one scenario fails, pass_1</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where one scenario fails, pass_2</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>This is a scenario outline where one scenario fails, fail_1</title>
+ <result>Failed</result>
+ </scenario>
+ <scenario>
+ <title>And we can go totally bonkers with multiple example sections., Examples 1, pass_1</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>And we can go totally bonkers with multiple example sections., Examples 1, pass_2</title>
+ <result>Passed</result>
+ </scenario>
+ <scenario>
+ <title>And we can go totally bonkers with multiple example sections., Examples 2, inconclusive_1</title>
+ <result>Pending</result>
+ </scenario>
+ <scenario>
+ <title>And we can go totally bonkers with multiple example sections., Examples 2, inconclusive_2</title>
+ <result>Pending</result>
+ </scenario>
+ <scenario>
+ <title>And we can go totally bonkers with multiple example sections., Examples 3, fail_1</title>
+ <result>Failed</result>
+ </scenario>
+ <scenario>
+ <title>And we can go totally bonkers with multiple example sections., Examples 3, fail_2</title>
+ <result>Failed</result>
+ </scenario>
+ </scenarios>
+ </feature>
</features>
Pickles End -->