示例#1
0
        public void invoke_lambda_source_without_specifying_a_filter_should_throw_exception()
        {
            theSource = new LambdaFieldValidationSource(new RequiredFieldRule());

            Exception <FubuValidationException> .ShouldBeThrownBy(() => theSource.As <IFieldValidationSource>().AssertIsValid())
            .Message.ShouldEqual("Missing filter on validation convention");
        }
        public void invoke_lambda_source_without_specifying_a_filter_should_throw_exception()
        {
            theSource = new LambdaFieldValidationSource(new RequiredFieldRule());

            Exception<FubuValidationException>.ShouldBeThrownBy(() => theSource.As<IFieldValidationSource>().AssertIsValid())
                .Message.ShouldEqual("Missing filter on validation convention");
        }
        public void register_simple_rules_by_property_type_filter()
        {
            theSource = new LambdaFieldValidationSource(new GreaterThanZeroRule());
            theSource.IfPropertyType(type => type.IsIntegerBased());

            rulesFor(x => x.Name).Any().ShouldBeFalse();
            rulesFor(x => x.NullableAge).Single().ShouldBeOfType<GreaterThanZeroRule>();
            rulesFor(x => x.Age).Single().ShouldBeOfType<GreaterThanZeroRule>();
        }
        public void register_simple_rules_by_filter()
        {
            theSource = new LambdaFieldValidationSource(new RequiredFieldRule());
            theSource.If(a => a.Name.StartsWith("Address"));

            rulesFor(x => x.Name).Any().ShouldBeFalse();
            rulesFor(x => x.Address1).Single().ShouldBeOfType<RequiredFieldRule>();
            rulesFor(x => x.Address2).Single().ShouldBeOfType<RequiredFieldRule>();
        }
示例#5
0
        public void register_simple_rules_by_property_type_filter()
        {
            theSource = new LambdaFieldValidationSource(new GreaterThanZeroRule());
            theSource.IfPropertyType(type => type.IsIntegerBased());

            rulesFor(x => x.Name).Any().ShouldBeFalse();
            rulesFor(x => x.NullableAge).Single().ShouldBeOfType <GreaterThanZeroRule>();
            rulesFor(x => x.Age).Single().ShouldBeOfType <GreaterThanZeroRule>();
        }
示例#6
0
        public void register_simple_rules_by_filter()
        {
            theSource = new LambdaFieldValidationSource(new RequiredFieldRule());
            theSource.If(a => a.Name.StartsWith("Address"));

            rulesFor(x => x.Name).Any().ShouldBeFalse();
            rulesFor(x => x.Address1).Single().ShouldBeOfType <RequiredFieldRule>();
            rulesFor(x => x.Address2).Single().ShouldBeOfType <RequiredFieldRule>();
        }
        public void register_simple_rules_by_rule_func()
        {
            theSource = new LambdaFieldValidationSource(a =>
            {
                var length = int.Parse(a.Name.Substring(7, 1));
                return new MaximumLengthRule(length);
            });

            theSource.If(a => a.Name.StartsWith("Address"));

            rulesFor(x => x.Name).Any().ShouldBeFalse();
            rulesFor(x => x.Address1).Single().ShouldBeOfType<MaximumLengthRule>().Length.ShouldEqual(1);
            rulesFor(x => x.Address2).Single().ShouldBeOfType<MaximumLengthRule>().Length.ShouldEqual(2);
        }
示例#8
0
        public void register_simple_rules_by_rule_func()
        {
            theSource = new LambdaFieldValidationSource(a =>
            {
                var length = int.Parse(a.Name.Substring(7, 1));
                return(new MaximumLengthRule(length));
            });

            theSource.If(a => a.Name.StartsWith("Address"));

            rulesFor(x => x.Name).Any().ShouldBeFalse();
            rulesFor(x => x.Address1).Single().ShouldBeOfType <MaximumLengthRule>().Length.ShouldEqual(1);
            rulesFor(x => x.Address2).Single().ShouldBeOfType <MaximumLengthRule>().Length.ShouldEqual(2);
        }
示例#9
0
 private LambdaFieldValidationSource applyPolicy(LambdaFieldValidationSource source)
 {
     _sources.Add(source);
     return(source);
 }
 public void SetUp()
 {
     theSource = null;
 }
示例#11
0
 public void SetUp()
 {
     theSource = null;
 }