コード例 #1
0
        public static void ValidateVideoRule()
        {
            Payment payment = new Payment()
            {
                Type = PaymentType.Video
            };
            PaymentRuleTestBuilder builder = new PaymentRuleTestBuilder();

            builder.AddPassingRule(typeof(VideoRule));

            PaymentRuleValidator validator = new PaymentRuleValidator();

            validator.ValidateAllRules(payment, builder);
        }
コード例 #2
0
        public static void ValidatePhysicalProductRule()
        {
            Payment payment = new Payment()
            {
                Type = PaymentType.PhysicalProduct
            };
            PaymentRuleTestBuilder builder = new PaymentRuleTestBuilder();

            builder.AddPassingRule(typeof(PhysicalProductOrBookRule))
            .AddPassingRule(typeof(PhysicalProductRule));

            PaymentRuleValidator validator = new PaymentRuleValidator();

            validator.ValidateAllRules(payment, builder);
        }
コード例 #3
0
        public static void ValidateLearningToSkiVideoRule()
        {
            Payment payment = new Payment()
            {
                Type = PaymentType.Video, Reference = "Learning to Ski", DateRequested = new DateTime(2017, 01, 01)
            };
            PaymentRuleTestBuilder builder = new PaymentRuleTestBuilder();

            builder.AddPassingRule(typeof(VideoRule))
            .AddPassingRule(typeof(LearningToSkiRule));

            PaymentRuleValidator validator = new PaymentRuleValidator();

            validator.ValidateAllRules(payment, builder);
        }
コード例 #4
0
        public static void ValidateMembershipUpgrade()
        {
            Payment payment = new Payment()
            {
                Type = PaymentType.MembershipUpgrade
            };
            PaymentRuleTestBuilder builder = new PaymentRuleTestBuilder();

            builder.AddPassingRule(typeof(MembershipUpgradeRule))
            .AddPassingRule(typeof(AnyMembershipRule));

            PaymentRuleValidator validator = new PaymentRuleValidator();

            validator.ValidateAllRules(payment, builder);
        }