main
1using jive;
2using Machine.Specifications;
3
4namespace specs.unit.utility
5{
6 public class NotSpecificationSpecs
7 {
8 [Subject(typeof (NotSpecification<>))]
9 public class when_checking_if_a_condition_is_not_met
10 {
11 static protected Moq.Mock<Specification<int>> criteria;
12
13 Establish c = () =>
14 {
15 criteria = Create.An<Specification<int>>();
16 sut = create_sut();
17 };
18
19 static protected Specification<int> sut;
20
21 static Specification<int> create_sut()
22 {
23 return new NotSpecification<int>(criteria.Object);
24 }
25 }
26
27 [Subject(typeof (NotSpecification<>))]
28 public class when_a_condition_is_not_met : when_checking_if_a_condition_is_not_met
29 {
30 Establish c = () => criteria.Setup(x => x.is_satisfied_by(1)).Returns(false);
31
32 Because b = () =>
33 {
34 result = sut.is_satisfied_by(1);
35 };
36
37 It should_return_true = () => result.should_be_true();
38
39 static bool result;
40 }
41
42 [Subject(typeof (NotSpecification<>))]
43 public class when_a_condition_is_met : when_checking_if_a_condition_is_not_met
44 {
45 Establish c = () => criteria.Setup(x => x.is_satisfied_by(1)).Returns(true);
46
47 Because b = () =>
48 {
49 result = sut.is_satisfied_by(1);
50 };
51
52 It should_return_false = () => result.should_be_false();
53
54 static bool result;
55 }
56 }
57}