Exemple #1
0
 private void ProcessTestDocument(string document, StoryTestWriter writer)
 {
     try
     {
         Tree <Cell> result    = service.Compose(new StoryTestString(document));
         var         parse     = result != null ? (Parse)result.Value : null;
         var         storyTest = new StoryTest(parse, writer);
         reporter.WriteLine(parse.Leader);
         if (suiteSetupIdentifier.IsStartOf(parse.Leader) || IMaybeProcessingSuiteSetup)
         {
             storyTest.ExecuteOnConfiguration(service.Configuration);
         }
         else
         {
             storyTest.Execute(service.Configuration);
         }
     }
     catch (Exception e)
     {
         var testStatus = new TestStatus();
         var parse      = new CellBase(parseError, "div");
         parse.SetAttribute(CellAttribute.Body, parseError);
         testStatus.MarkException(parse, e);
         writer.WriteTable(new CellTree(parse));
         writer.WriteTest(new CellTree().AddBranchValue(parse), testStatus.Counts);
     }
 }
Exemple #2
0
        public TypedValue Decorate(CellProcessor processor, Tree <Cell> table, Func <TypedValue> action)
        {
            var elapsed = new ElapsedTime();
            var result  = action();
            var time    = elapsed.ToString();

            if (!table.Branches.Last().Branches.Last().Value.Text.StartsWith("elapsed: "))
            {
                table.Branches.Last()
                .Add(processor.Compose(new TypedValue($"elapsed: {time}")));
            }
            return(result);
        }
Exemple #3
0
            Parse MakeSurplusRow(CellProcessor processor, object theSurplusRow)
            {
                Parse cells = null;

                foreach (TypedValue actualValue in myStrategy.ActualValues(theSurplusRow))
                {
                    var cell = (Parse)processor.Compose(actualValue.IsVoid ? new TypedValue(string.Empty) : actualValue);
                    if (cells == null)
                    {
                        cell.SetAttribute(CellAttribute.Label, "surplus");
                        cells = cell;
                    }
                    else
                    {
                        cells.Last.More = cell;
                    }
                }
                var row = new Parse("tr", null, cells, null);

                processor.TestStatus.MarkWrong(row);
                return(row);
            }
Exemple #4
0
        static bool IsExecutable(CellProcessor processor, string content)
        {
            var parsedInput = processor.Compose(new StoryTestString(content));

            return(parsedInput != null && parsedInput.Branches.Count > 0);
        }
 Parse MakeSurplusRow(CellProcessor processor, object theSurplusRow)
 {
     Parse cells = null;
     foreach (TypedValue actualValue in myStrategy.ActualValues(theSurplusRow)) {
         var cell = (Parse) processor.Compose(actualValue.IsVoid ? new TypedValue(string.Empty) : actualValue);
         if (cells == null) {
             cell.SetAttribute(CellAttribute.Label, "surplus");
             cells = cell;
         }
         else
             cells.Last.More = cell;
     }
     var row = new Parse("tr", null, cells, null);
     processor.TestStatus.MarkWrong(row);
     return row;
 }
Exemple #6
0
 static bool IsExecutable(CellProcessor processor, string content)
 {
     var parsedInput = processor.Compose(new StoryTestString(content));
     return parsedInput != null && parsedInput.Branches.Count > 0;
 }