Inheritance: ICompositeExecution
 public void SpecHandled(SpecificationPlan plan, SpecResults specResults)
 {
     var record = _records[plan.Specification.id];
     record.results = specResults;
     record.specification = plan.Specification;
     CompleteCheck();
 }
 public InstrumentedExecutor(SpecContext context, SpecificationPlan plan, IUserInterfaceObserver observer)
     : base(context)
 {
     _observer = observer;
     _total = plan.Count();
     _step = 0;
     _plan = plan;
 }
        public static void RunAll(SpecContext context, SpecificationPlan plan)
        {
            var gatherer = new LineStepGatherer(context);
            plan.AcceptVisitor(gatherer);

            foreach (var line in gatherer.Lines)
            {
                if (!context.CanContinue()) break;

                line.Execute(context);
            }
        }
 public StepthroughExecutor(SpecContext context, SpecificationPlan plan, IUserInterfaceObserver observer)
 {
     _observer = observer;
     _context = context;
     plan.AcceptVisitor(this);
 }
 public IStepExecutor BuildExecutor(SpecificationPlan plan, SpecContext context)
 {
     return new SynchronousExecutor(context);
 }
 public IStepExecutor BuildExecutor(SpecificationPlan plan, SpecContext context)
 {
     return new InstrumentedExecutor(context, plan, _observer);
 }