public void When_A_Background_Is_Present_Its_Included_In_Markdown_Output() { var mockStyle = new MockStylist { FeatureHeadingFormat = "FeatureHeading: {0}", BackgroundHeadingFormat = "BackgroundHeading: {0}" }; var feature = new Feature { Name = "Feature with Background" }; feature.AddBackground(new Scenario()); var featureBlock = new FeatureBlock(feature, mockStyle); var results = new string[featureBlock.Lines.Count]; var i = 0; foreach (var line in featureBlock.Lines) { results[i] = line; i++; } Assert.AreEqual("FeatureHeading: Feature with Background", results[0]); Assert.AreEqual("BackgroundHeading:", results[2]); Assert.AreEqual(3, results.Length); }
public void When_Mutiple_Scenarios_Are_Available_They_Are_Included_After_Heading() { var mockStyle = new MockStylist { FeatureHeadingFormat = "FeatureHeading: {0}", ScenarioHeadingFormat = "ScenarioHeading: {0}" }; var feature = new Feature { Name = "Feature with Scenario" }; feature.AddFeatureElement(new Scenario() { Name = "My Scenario one" }); feature.AddFeatureElement(new Scenario() { Name = "My Scenario two" }); var featureBlock = new FeatureBlock(feature, mockStyle); var actualString = featureBlock.ToString().Split(new string[] { Environment.NewLine }, StringSplitOptions.None); Assert.AreEqual("FeatureHeading: Feature with Scenario", actualString[0]); Assert.AreEqual("ScenarioHeading: My Scenario one", actualString[2]); Assert.AreEqual("ScenarioHeading: My Scenario two", actualString[4]); Assert.AreEqual(7, actualString.Length); }
private Lines Feature(FeatureNode node) { var feature = node.Feature; var featureBlock = new FeatureBlock(feature, style); return(featureBlock.Lines); }
public void A_New_FeatureBlock_Has_Feature_Heading_On_First_Line() { var expectedString = "FHF: Hello, World"; var mockStyle = new MockStylist { FeatureHeadingFormat = "FHF: {0}" }; var feature = new Feature { Name = "Hello, World" }; var featureBlock = new FeatureBlock(feature, mockStyle); var actualString = featureBlock.ToString().Split(new string[] { Environment.NewLine }, StringSplitOptions.None); Assert.AreEqual(expectedString, actualString[0]); Assert.AreEqual(3, actualString.Length); }
public void When_Feature_Tags_Available_They_Are_Placed_On_Single_Line_Before_Heading() { var mockStyle = new MockStylist { FeatureHeadingFormat = "FeatureHeading: {0}", TagFormat = ">>>{0}<<<" }; var feature = new Feature { Name = "Feature with Tags" }; feature.AddTag("tagone"); feature.AddTag("tagtwo"); var featureBlock = new FeatureBlock(feature, mockStyle); var actualString = featureBlock.ToString().Split(new string[] { Environment.NewLine }, StringSplitOptions.None); Assert.AreEqual(">>>tagone<<< >>>tagtwo<<<", actualString[0]); Assert.AreEqual("FeatureHeading: Feature with Tags", actualString[2]); Assert.AreEqual(5, actualString.Length); }
public void When_Feature_Description_Available_It_Is_Placed_Below_Feature_Heading() { var mockStyle = new MockStylist { FeatureHeadingFormat = "FeatureHeading: {0}" }; var feature = new Feature { Name = "Feature with description", Description = String.Concat( "In order to determine that world is flat", Environment.NewLine, "As a captain of a ship", Environment.NewLine, "I want to sail beyond the horizion") }; var featureBlock = new FeatureBlock(feature, mockStyle); var actualString = featureBlock.ToString().Split(new string[] { Environment.NewLine }, StringSplitOptions.None); Assert.AreEqual("FeatureHeading: Feature with description", actualString[0]); Assert.AreEqual("In order to determine that world is flat", actualString[2]); Assert.AreEqual("As a captain of a ship", actualString[4]); Assert.AreEqual("I want to sail beyond the horizion", actualString[6]); Assert.AreEqual(9, actualString.Length); }