private TestResult GetResultFromFeature(Feature cucumberFeature, Element background)
        {
            if (cucumberFeature?.elements == null)
            {
                return TestResult.Inconclusive;
            }

            return ToTestResult(cucumberFeature, background);
        }
        private TestResult ToTestResult(Element scenario, Element background)
        {
            var steps = (background?.steps ?? new List<Step>()).Concat(scenario.steps);

            return steps.Where(s => s.result != null).Select(ToTestResult).Merge();
        }
 private TestResult ToTestResult(Feature feature, Element background)
 {
     return feature.elements.Select(e => ToTestResult(e, background)).Merge();
 }
 private bool ScenarioHasAStepWithThisExampleValue(Element cucumberScenario, string exampleValue)
 {
     return cucumberScenario.steps.Any(step => step.name.Contains(exampleValue));
 }
 private bool ScenarioHasStepsForAllExampleValues(Element cucumberScenario, string[] exampleValues)
 {
     return exampleValues.All(exampleValue => this.ScenarioHasAStepWithThisExampleValue(cucumberScenario, exampleValue));
 }
 public ScenarioBaseAndBackground(Element scenarioBase, Element background)
 {
     this.ScenarioBase = scenarioBase;
     this.Background = background;
 }
 public FeatureAndBackground(Feature feature, Element background)
 {
     this.Feature = feature;
     this.Background = background;
 }
        private TestResult GetResultFromScenario(Element cucumberScenario, Element background)
        {
            if (cucumberScenario == null)
            {
                return TestResult.Inconclusive;
            }


            return ToTestResult(cucumberScenario, background);
        }