private IHtmlNode GetFeatureDetails(IFeatureResult feature, int index) { return(Html.Tag(Html5Tag.Article).Class(GetFeatureClasses(feature)).Content( Html.Checkbox().Class("toggle toggleF").Id("toggle" + index).Checked(), Html.Tag(Html5Tag.Div).Class("header").Content( Html.Tag(Html5Tag.H2).Id("feature" + index).Class("title").Content( Html.Tag(Html5Tag.Label).For("toggle" + index).Content(GetCheckBoxTag(), Html.Text(feature.Info.Name.Format(StepNameDecorator))), Html.Tag(Html5Tag.Span).Content(feature.Info.Labels.Select(GetLabel)).SkipEmpty(), GetSmallLink("feature" + index)), Html.Tag(Html5Tag.Div).Class("description").Content(feature.Info.Description)), Html.Tag(Html5Tag.Div).Class("scenarios").Content( feature.GetScenariosOrderedByName().Select((s, i) => GetScenario(s, index, i))))); }
private static XElement ToXElement(IFeatureResult feature) { var objects = new List <object> { new XAttribute("Name", feature.Info.Name) }; objects.AddRange(feature.Info.Labels.Select(label => new XElement("Label", new XAttribute("Name", label)))); if (!string.IsNullOrWhiteSpace(feature.Info.Description)) { objects.Add(new XElement("Description", feature.Info.Description)); } objects.AddRange(feature.GetScenariosOrderedByName().Select(ToXElement)); objects.Add(new XAttribute("RuntimeId", feature.Info.RuntimeId.ToString("D"))); return(new XElement("Feature", objects)); }
private static void FormatFeature(TextWriter writer, IFeatureResult feature) { writer.WriteLine(); writer.Write("Feature: "); writer.Write(feature.Info.Name); FormatLabels(writer, feature.Info.Labels); writer.WriteLine(); if (!string.IsNullOrWhiteSpace(feature.Info.Description)) { writer.Write("\t"); writer.Write(feature.Info.Description.Replace(Environment.NewLine, Environment.NewLine + "\t")); writer.WriteLine(); } foreach (var scenario in feature.GetScenariosOrderedByName()) { FormatScenario(writer, scenario); } }