Пример #1
0
        public void TestStringLengthValidationParamsCheck()
        {
            var parameters = new StringLengthValidationParams();

            AssertCheck(parameters, "Either min or max must be specified");

            parameters.Min = -5;
            AssertCheck(parameters, "Must be a positive integer Min");

            parameters.Min = 10;
            parameters.Max = -10;
            AssertCheck(parameters, "Must be a positive integer Max");
        }
Пример #2
0
        public void TestStringLengthValidationParamsDictionary()
        {
            const int minValue   = 5;
            const int maxValue   = 10;
            var       parameters = new StringLengthValidationParams
            {
                Min = minValue,
                Max = maxValue
            };

            Assert.DoesNotThrow(() => parameters.Check());

            var dictionary = parameters.ToParamsDictionary();

            Assert.AreEqual(minValue, dictionary["min"]);
            Assert.AreEqual(maxValue, dictionary["max"]);
            Assert.AreEqual("strlen", dictionary["type"]);
        }
Пример #3
0
        public void TestAndValidationParamsDictionary()
        {
            var strLenParams = new StringLengthValidationParams
            {
                Max = 10
            };
            var intLessThanParams = new IntLessThanValidationParams(30);
            var parameters        = new AndValidationParams(new List <MetadataValidationParams>
            {
                strLenParams, intLessThanParams
            });

            Assert.DoesNotThrow(() => parameters.Check());

            var dictionary = parameters.ToParamsDictionary();

            Assert.AreEqual("and", dictionary["type"]);
            var rules = (List <SortedDictionary <string, object> >)dictionary["rules"];

            Assert.AreEqual(parameters.Rules.Count, rules.Count);
            Assert.AreEqual("strlen", rules[0]["type"]);
            Assert.AreEqual("less_than", rules[1]["type"]);
        }