예제 #1
0
        public void CreateSpecificationRule_WithSpecification_SpecificationIsUsed()
        {
            var specification = new TestSpecification();
            var rule          = SpecificationRule.CreateSpecificationRule(specification, "Rule 1");

            var customer = new Customer();
            var context  = new RuleEngineContext <Customer> (customer);

            rule.WhenClause(context);

            Assert.IsTrue(specification.IsSatisfiedByCalled);
        }
예제 #2
0
 public void CreateSpecificationRule_WithNullName_ThrowsArgumentException()
 {
     SpecificationRule.CreateSpecificationRule(new TestSpecification(), null);
 }
예제 #3
0
        public void CreateSpecificationRule_WithSpecification_ReturnsSpecificationRule()
        {
            var rule = SpecificationRule.CreateSpecificationRule(new TestSpecification(), "Rule 1");

            Assert.IsInstanceOfType(rule, typeof(SpecificationRule));
        }
예제 #4
0
 public void CreateSpecificationRule_WithNullSpecification_ThrowsArgumentException()
 {
     SpecificationRule.CreateSpecificationRule <Customer> (null, "Rule 1");
 }