示例#1
0
 public static CaseBehaviorBuilder SetUpTearDown <TSetUpAttribute, TTearDownAttribute>(this CaseBehaviorBuilder builder)
     where TSetUpAttribute : Attribute
     where TTearDownAttribute : Attribute
 {
     return(builder.SetUpTearDown((caseExecution, instance) => InvokeAll <TSetUpAttribute>(caseExecution.Case.Class, instance),
                                  (caseExecution, instance) => InvokeAll <TTearDownAttribute>(caseExecution.Case.Class, instance)));
 }
        public void ShouldShortCircuitSetupAndInnerBehaviorAndTearDownWhenCaseAlreadyHasExceptionsPriorToSetup()
        {
            builder.SetUpTearDown(SetUp, TearDown);

            using (var console = new RedirectedConsole())
            {
                var @case     = Case("Pass");
                var exception = new Exception("Exception from earlier in the behavior chain.");
                @case.Exceptions.Add(exception);

                builder.Behavior.Execute(@case, instance);

                @case.Exceptions.ToArray().Single().ShouldEqual(exception);
                console.Lines.ShouldEqual();
            }
        }
 public static CaseBehaviorBuilder SetUpTearDown(this CaseBehaviorBuilder builder, string setUpMethod, string tearDownMethod)
 {
     return builder.SetUpTearDown((@case, instance) => TryInvoke(setUpMethod, @case.Class, instance),
                                  (@case, instance) => TryInvoke(tearDownMethod, @case.Class, instance));
 }
示例#4
0
 public static CaseBehaviorBuilder SetUpTearDown(this CaseBehaviorBuilder builder, string setUpMethod, string tearDownMethod)
 {
     return(builder.SetUpTearDown((caseExecution, instance) => TryInvoke(setUpMethod, caseExecution.Case.Class, instance),
                                  (caseExecution, instance) => TryInvoke(tearDownMethod, caseExecution.Case.Class, instance)));
 }