예제 #1
0
        private void DoExamplesInScenario(ScenarioExampleResult scenarioExampleResult)
        {
            if (scenarioExampleResult == null)
            {
                return;
            }

            Writer.WriteStartElement("examples");
            WriteColumnNames(scenarioExampleResult.Examples.First().ColumnNames);

            var scenarioResults = scenarioExampleResult.ExampleResults.ToArray();
            var idx             = 0;

            foreach (var example in scenarioExampleResult.Examples)
            {
                Writer.WriteStartElement("example");
                Writer.WriteStartAttribute("outcome");
                Writer.WriteString(scenarioResults[idx++].Result.ToString());
                Writer.WriteEndAttribute();
                WriteExampleRow(example);
                Writer.WriteEndElement();
            }

            Writer.WriteEndElement();
        }
        private static void DoExamplesInScenario(ScenarioExampleResult scenarioExampleResult)
        {
            if (scenarioExampleResult == null)
            {
                return;
            }

            string columns = "Examples:" + Environment.NewLine + "|";

            foreach (var columnName in scenarioExampleResult.Examples.First().ColumnNames)
            {
                columns += columnName + "|";
            }
            WriteColorString(columns, ConsoleColor.Gray);

            var scenarioResults = scenarioExampleResult.ExampleResults.ToArray();
            int idx             = 0;

            foreach (var example in scenarioExampleResult.Examples)
            {
                string row = "|";
                foreach (var columnName in example.ColumnNames)
                {
                    row += example.ColumnValues[columnName] + "|";
                }
                WriteColorString(row, GetColorForResult(scenarioResults[idx++].Result));
            }
        }
예제 #3
0
        public ScenarioExampleResult RunExamples(Scenario scenario,
                                                 Func <IEnumerable <StringStep>, IEnumerable <StepResult> > runSteps,
                                                 Action beforeScenario,
                                                 Action <Scenario, ScenarioResult> afterScenario)
        {
            var exampleResults = new ScenarioExampleResult(scenario.Feature, scenario.Title, scenario.Steps, scenario.Examples);

            foreach (var example in scenario.Examples)
            {
                beforeScenario();
                var scenarioResult = RunExample(scenario, runSteps, example);
                afterScenario(scenario, scenarioResult);
                exampleResults.AddResult(scenarioResult);
            }
            return(exampleResults);
        }
예제 #4
0
        public ScenarioExampleResult RunExamples(Scenario scenario, 
            Func<IEnumerable<StringStep>, IEnumerable<StepResult>> runSteps,
            Action beforeScenario,
            Action<Scenario, ScenarioResult> afterScenario)
        {
            var exampleResults = new ScenarioExampleResult(scenario.Feature, scenario.Title, scenario.Steps, scenario.Examples);

            foreach (var example in scenario.Examples)
            {
                beforeScenario();
                var scenarioResult = RunExample(scenario, runSteps, example);
                afterScenario(scenario, scenarioResult);
                exampleResults.AddResult(scenarioResult);
            }
            return exampleResults;
        }
예제 #5
0
        private void DoExamplesInScenario(ScenarioExampleResult scenarioExampleResult)
        {
            if (scenarioExampleResult == null)
            {
                return;
            }

            var ex      = new ExampleTableFormatter();
            var columns = "Examples:" + Environment.NewLine + "\t" + ex.TableHeader(scenarioExampleResult.Examples);

            writer.WriteColorString(columns, ConsoleColor.Gray);

            var scenarioResults = scenarioExampleResult.ExampleResults.ToArray();
            var rows            = ex.TableRows(scenarioExampleResult.Examples);

            for (int i = 0; i < rows.Length; i++)
            {
                writer.WriteColorString("\t" + rows[i], GetColorForResult(scenarioResults[i].Result));
            }
        }
예제 #6
0
        private void NotifyResharperOfExampleResults(ScenarioExampleResult result)
        {
            if (result == null)
            {
                return;
            }

            var scenarioResults = result.ExampleResults.ToArray();
            var idx             = 0;

            foreach (var example in result.Examples)
            {
                var scenarioResult = scenarioResults[idx++];
                var node           = GetTaskStateFor <NBehaveExampleTask>(_ => _.Scenario == result.ScenarioTitle && _.Example == example.ToString());
                if (node == null)
                {
                    continue;
                }

                NotifyResharperOfTaskResult(result, CreateStepResult(example, scenarioResult), node);
            }
        }
예제 #7
0
        private void DoExamplesInScenario(ScenarioExampleResult scenarioExampleResult)
        {
            if (scenarioExampleResult == null)
            {
                return;
            }

            Writer.WriteStartElement("examples");
            WriteColumnNames(scenarioExampleResult.Examples.First().ColumnNames);

            var scenarioResults = scenarioExampleResult.ExampleResults.ToArray();
            var idx = 0;
            foreach (var example in scenarioExampleResult.Examples)
            {
                Writer.WriteStartElement("example");
                Writer.WriteStartAttribute("outcome");
                Writer.WriteString(scenarioResults[idx++].Result.ToString());
                Writer.WriteEndAttribute();
                WriteExampleRow(example);
                Writer.WriteEndElement();
            }

            Writer.WriteEndElement();
        }
예제 #8
0
        private void DoExamplesInScenario(ScenarioExampleResult scenarioExampleResult)
        {
            if (scenarioExampleResult == null)
                return;

            var ex = new ExampleTableFormatter();
            var columns = "Examples:" + Environment.NewLine + "\t" + ex.TableHeader(scenarioExampleResult.Examples);
            writer.WriteColorString(columns, ConsoleColor.Gray);

            var scenarioResults = scenarioExampleResult.ExampleResults.ToArray();
            var rows = ex.TableRows(scenarioExampleResult.Examples);
            for (int i = 0; i < rows.Length; i++)
                writer.WriteColorString("\t" + rows[i], GetColorForResult(scenarioResults[i].Result));
        }