示例#1
0
        public void Should_Validate_With_ReferenceLoopProtection(string name, bool referenceLoopProtectionEnabled, Specification <ValidationTestData.TestClass> specification, ValidationTestData.TestClass model, IReadOnlyDictionary <string, IReadOnlyList <ValidationTestData.ErrorTestCase> > errorCases, ValidationTestData.ReferenceLoopExceptionCase exceptionCase)
        {
            _ = name;

            var settings = new ValidatorSettings();

            if (referenceLoopProtectionEnabled)
            {
                settings.WithReferenceLoopProtection();
            }
            else
            {
                settings.WithReferenceLoopProtectionDisabled();
            }

            var validator = new Validator <ValidationTestData.TestClass>(specification, settings);

            validator.ShouldValidateAndHaveResult(model, false, errorCases, exceptionCase);
        }
示例#2
0
        public void Should_IsValid_Return_True_If_NoErrors(string name, Specification <ValidationTestData.TestClass> specification, ValidationTestData.TestClass model, bool expectedIsValid, ValidationTestData.ReferenceLoopExceptionCase exceptionCase)
        {
            _ = name;

            var validator = new Validator <ValidationTestData.TestClass>(specification);

            validator.ShouldHaveIsValueTrueIfNoErrors(model, expectedIsValid, exceptionCase);
        }
示例#3
0
            public void Should_Validate(string name, Specification <ValidationTestData.TestClass> specification, ValidationTestData.TestClass model, IReadOnlyDictionary <string, IReadOnlyList <ValidationTestData.ErrorTestCase> > errorCases, ValidationTestData.ReferenceLoopExceptionCase exceptionCase)
            {
                _ = name;

                var holder = new TestClassSpecificationHolder()
                {
                    Specification = specification
                };

                var validator = Validator.Factory.Create(holder);

                validator.ShouldValidateAndHaveResult(model, false, errorCases, exceptionCase);
            }
示例#4
0
        public void Should_Validate_AndFailFast(string name, Specification <ValidationTestData.TestClass> specification, ValidationTestData.TestClass model, IReadOnlyDictionary <string, IReadOnlyList <ValidationTestData.ErrorTestCase> > errorCases, ValidationTestData.ReferenceLoopExceptionCase exceptionCase)
        {
            _ = name;

            var validator = new Validator <ValidationTestData.TestClass>(specification);

            validator.ShouldValidateAndHaveResult(model, true, errorCases, exceptionCase);
        }
示例#5
0
            public void Should_IsValid_Return_True_If_NoErrors(string name, Specification <ValidationTestData.TestClass> specification, ValidationTestData.TestClass model, bool expectedIsValid, ValidationTestData.ReferenceLoopExceptionCase exceptionCase)
            {
                _ = name;

                var holder = new TestClassSpecificationHolder()
                {
                    Specification = specification
                };

                var validator = Validator.Factory.Create(holder);

                validator.ShouldHaveIsValueTrueIfNoErrors(model, expectedIsValid, exceptionCase);
            }