Exemplo n.º 1
0
        public void PropertyChainShouldContainPrefixes()
        {
            var testContainer = new OuterTestClass
            {
                TestClasses = new[]
                {
                    new TestClass
                    {
                        List = new[]
                        { new InnerClass {
                              DupeVal = "hello"
                          }, new InnerClass {
                              DupeVal = "hello"
                          }, new InnerClass() }
                    },
                    new TestClass
                    {
                        List = new[]
                        { new InnerClass {
                              DupeVal = "hello1"
                          }, new InnerClass {
                              DupeVal = "hello2"
                          }, new InnerClass() }
                    },
                    new TestClass
                    {
                        List = new[]
                        {
                            new InnerClass {
                                DupeVal = "hello"
                            }, new InnerClass {
                                DupeVal = "hello"
                            },
                            new InnerClass {
                                DupeVal = "hello"
                            }
                        }
                    }
                }
            };

            var outerTestClassValidator = new OuterTestClassValidator();

            var validationReport = outerTestClassValidator.Validate(testContainer);

            validationReport.IsValid.ShouldBeFalse();

            var violations = validationReport.Violations.ToArray();

            violations.Count().ShouldEqual(5);

            var error1 = ReflectionHelper.PropertyChainToString(violations[0].Property, '.');

            error1.ShouldEqual("TestClasses[0].List[0].DupeVal");

            var error3 = ReflectionHelper.PropertyChainToString(violations[3].Property, '.');

            error3.ShouldEqual("TestClasses[2].List[1].DupeVal");
        }
Exemplo n.º 2
0
        public void ValidatesPublicProperty()
        {
            var model = new OuterTestClass(10);

            Model.Verify(model);

            model
            .PublicProperty
            .Value
            .Value
            .Should()
            .Be(10);
        }
Exemplo n.º 3
0
        public void ValidatesPublicField()
        {
            var model = new OuterTestClass(10);

            Model.Verify(model);

            model
            ._publicField
            .Value
            .Value
            .Should()
            .Be(10);
        }