Exemplo n.º 1
0
        public void setup()
        {
            contexts = new ContextCollection();

            var context = new Context();

            context.AddExample(new Example());

            context.AddExample(new Example(pending:true));

            context.AddExample(new Example{Exception = new Exception()});

            contexts.Add(context);
        }
        public void setup()
        {
            contexts = new ContextCollection();

            var context = new Context();

            context.AddExample(new ExampleBaseWrap());

            context.AddExample(new ExampleBaseWrap { Pending = true });

            context.AddExample(new ExampleBaseWrap { Exception = new Exception() });

            context.Tags.Add(Tags.Focus);

            contexts.Add(context);
        }
Exemplo n.º 3
0
        protected void Exercise(Example example)
        {
            Context.AddExample(example);

            if (!example.Pending)
            {
                example.Run(Context);
            }
        }
Exemplo n.º 4
0
 public void BuildMethodLevelExamples(Context classContext, Type specClass)
 {
     specClass
         .Methods()
         .Where(s => conventions.IsMethodLevelExample(s.Name)).Do(
         methodInfo =>
         {
             classContext.AddExample(new Example(methodInfo));
         });
 }
Exemplo n.º 5
0
 public void BuildMethodLevelExamples(Context classContext, Type specClass)
 {
     specClass
     .Methods()
     .Where(s => conventions.IsMethodLevelExample(s.Name)).Do(
         methodInfo =>
     {
         classContext.AddExample(new Example(methodInfo));
     });
 }
Exemplo n.º 6
0
        public void should_be_marked_as_pending_if_parent_context_is_pending()
        {
            var context = new Context("pending context", null, isPending: true);

            var example = new Example("example name");

            context.AddExample(example);

            example.Pending.should_be_true();
        }
Exemplo n.º 7
0
        public void should_concatenate_its_contexts_name_into_a_full_name()
        {
            var context = new Context("context name");

            var example = new Example("example name");

            context.AddExample(example);

            example.FullName().should_be("context name. example name.");
        }
Exemplo n.º 8
0
        public void should_be_marked_as_pending_if_any_parent_context_is_pending()
        {
            var parentContext = new Context("parent pending context", 0, isPending: true);
            var context = new Context("not pending");
            var example = new Example("example name");

            parentContext.AddContext(context);

            context.AddExample(example);

            example.Pending.should_be_true();
        }
Exemplo n.º 9
0
        public void given_nested_contexts_and_the_child_has_a_failure()
        {
            var child = new Context("child");

            child.AddExample(new Example("") {Exception = new Exception()});

            var parent = new Context("parent");

            parent.AddContext(child);

            parent.Failures().Count().should_be(1);
        }
Exemplo n.º 10
0
        public void BuildMethodLevelExamples(Context classContext, Type specClass)
        {
            specClass
                .Methods()
                .Where(s => conventions.IsMethodLevelExample(s.Name))
                .Do(methodInfo =>
                {
                    var methodExample = new MethodExample(methodInfo, TagStringFor(methodInfo));

                    classContext.AddExample(methodExample);
                });
        }
Exemplo n.º 11
0
        public void BuildMethodLevelExamples(Context classContext, Type specClass)
        {
            specClass
            .Methods()
            .Where(s => conventions.IsMethodLevelExample(s.Name))
            .Do(methodInfo =>
            {
                var methodExample = new MethodExample(methodInfo, TagStringFor(methodInfo));

                classContext.AddExample(methodExample);
            });
        }
Exemplo n.º 12
0
        public void setup()
        {
            try
            {
                throw new Exception("BOOM!");
            }
            catch (Exception exception)
            {
                example = new Example("example name") { Exception = exception };
            }

            var context = new Context("context name");

            context.AddExample(example);

            output = new ConsoleFormatter().WriteFailure(example);
        }
Exemplo n.º 13
0
        public void BuildMethodLevelExamples(Context classContext, Type specClass)
        {
            Func <MethodInfo, MethodExampleBase> buildMethodLevel = method =>
                                                                    new MethodExample(method, TagStringFor(method));

            Func <MethodInfo, MethodExampleBase> buildAsyncMethodLevel = method =>
                                                                         new AsyncMethodExample(method, TagStringFor(method));

            specClass
            .Methods()
            .Union(specClass
                   .AsyncMethods())
            .Where(method => conventions.IsMethodLevelExample(method.Name))
            .Select(method =>
            {
                return(method.IsAsync()
                        ? buildAsyncMethodLevel(method)
                        : buildMethodLevel(method));
            })
            .Do(methodExample =>
            {
                classContext.AddExample(methodExample);
            });
        }
Exemplo n.º 14
0
        public void BuildMethodLevelExamples(Context classContext, Type specClass)
        {
            Func<MethodInfo, MethodExampleBase> buildMethodLevel = method =>
                new MethodExample(method, TagStringFor(method));

            Func<MethodInfo, MethodExampleBase> buildAsyncMethodLevel = method =>
                new AsyncMethodExample(method, TagStringFor(method));

            specClass
                .Methods()
                .Union(specClass
                    .AsyncMethods())
                .Where(method => conventions.IsMethodLevelExample(method.Name))
                .Select(method =>
                {
                    return method.IsAsync()
                        ? buildAsyncMethodLevel(method)
                        : buildMethodLevel(method);
                })
                .Do(methodExample =>
                {
                    classContext.AddExample(methodExample);
                });
        }
Exemplo n.º 15
0
 protected string Given(params Exception[] exceptions)
 {
     return Given(
         exceptions.Select(e =>
                               {
                                   var context = new Context("context name");
                                   context.AddExample(new Example("example name") { Exception = e });
                                   return context;
                               }).ToArray());
 }
Exemplo n.º 16
0
        public void given_nested_contexts_with_and_without_executed_examples()
        {
            var root = new Context( "root context" );

            // add context with a skipped example
            root.AddContext( new Context( "context with no example" ) );

            // add context with an executed example
            var context = new Context( "context with example" );
            context.AddExample( new Example( "example" ) );
            context.Examples[ 0 ].HasRun = true;
            root.AddContext( context );

            // validate precondition
            root.Contexts.Count().should_be( 2 );

            // perform trim operation
            root.TrimSkippedDescendants();

            // validate postcondition
            root.Contexts.Count().should_be( 1 );
        }
Exemplo n.º 17
0
        public Context GivenContextWithExecutedExample()
        {
            var context = new Context("context with example");
            context.AddExample(new Example("example"));
            context.Examples[0].HasRun = true;

            return context;
        }