示例#1
0
        public void ConditionMet_True_AfterSpaceNotAllowedCharacters(string postCodeTemplate)
        {
            var notAllowed = new List <char>()
            {
                'C', 'I', 'K', 'M', 'O', 'V'
            };
            var rule = new Postcode_15Rule(null);

            foreach (char letter in notAllowed)
            {
                var niNumber = string.Format(postCodeTemplate, letter);
                rule.ConditionMet(niNumber).Should().BeTrue();
            }
        }
示例#2
0
        public void Validate_Error()
        {
            var learner = new Mock <ILearner>();

            learner.SetupGet(x => x.Postcode).Returns("B1 XXX");

            var validationErrorHandlerMock = new Mock <IValidationErrorHandler>();
            Expression <Action <IValidationErrorHandler> > handle = veh => veh.Handle("PostCode_15", null, null, null);

            var rule = new Postcode_15Rule(validationErrorHandlerMock.Object);

            rule.Validate(learner.Object);
            validationErrorHandlerMock.Verify(handle, Times.Once);
        }
示例#3
0
        public void ConditionMet_False_AfterSpaceNotAllowedCharacters(string postCodeTemplate)
        {
            var notAllowed = new List <char>()
            {
                'C', 'I', 'K', 'M', 'O', 'V'
            };

            char[] allowedCharacters = Enumerable.Range('A', 'Z' - 'A' + 1).Select(i => (char)i).Where(x => !notAllowed.Contains(x)).ToArray();

            var rule = new Postcode_15Rule(null);

            foreach (char letter in allowedCharacters)
            {
                var niNumber = string.Format(postCodeTemplate, letter);
                rule.ConditionMet(niNumber).Should().BeFalse();
            }
        }
示例#4
0
        public void ConditionMet_False_AfterSpaceNumbers()
        {
            var rule = new Postcode_15Rule(null);

            rule.ConditionMet("B11 9XX").Should().BeFalse();
        }
示例#5
0
        public void ConditionMet_True_AfterSpaceNumbers()
        {
            var rule = new Postcode_15Rule(null);

            rule.ConditionMet("B11 EEW").Should().BeTrue();
        }
示例#6
0
        public void ConditionMet_False_Space()
        {
            var rule = new Postcode_15Rule(null);

            rule.ConditionMet("B11 1EW").Should().BeFalse();
        }
示例#7
0
        public void ConditionMet_False_MiddleTwoCharacters(string postcode)
        {
            var rule = new Postcode_15Rule(null);

            rule.ConditionMet(postcode).Should().BeFalse();
        }
示例#8
0
        public void ConditionMet_True_FirstTwoCharacters(string postcode)
        {
            var rule = new Postcode_15Rule(null);

            rule.ConditionMet(postcode).Should().BeTrue();
        }