コード例 #1
0
        protected NBiConstraint InstantiateConstraint(MatchPatternXml matchPatternXml)
        {
            var regexBuilder = new RegexBuilder();

            var ctr = new MatchPatternConstraint();
            if (!string.IsNullOrEmpty(matchPatternXml.Regex))
                ctr = ctr.Regex(matchPatternXml.Regex);

            if (matchPatternXml.NumericFormat != null && !matchPatternXml.NumericFormat.IsEmpty)
                ctr = ctr.Regex(regexBuilder.Build(matchPatternXml.NumericFormat));

            if (matchPatternXml.CurrencyFormat != null && !matchPatternXml.CurrencyFormat.IsEmpty)
                ctr = ctr.Regex(regexBuilder.Build(matchPatternXml.CurrencyFormat));

            return ctr;
        }
コード例 #2
0
        public void Matches_RegexWronglySpecified_Validated()
        {
            var cells = new FormattedResults();
            cells.Add("$185,125.12");
            cells.Add("$125.12");
            cells.Add("$125");

            var matchPatternConstraint = new MatchPatternConstraint();
            matchPatternConstraint = matchPatternConstraint.Regex(@"^\$?[0-9]{1,3}(?:,?[0-9]{3})*\.[0-9]{2}$");

            //Method under test
            var res = matchPatternConstraint.Matches(cells);

            //Test conclusion
            Assert.That(res, Is.False);
        }
コード例 #3
0
        public void WriteDescription_OneItemHasFailed_CorrectKeywordsForPredicate()
        {
            var cells = new FormattedResults();
            cells.Add("$185,125.12");
            cells.Add("$125.12");
            cells.Add("$125");

            var matchPatternConstraint = new MatchPatternConstraint();
            matchPatternConstraint = matchPatternConstraint.Regex(@"^\$?[0-9]{1,3}(?:,?[0-9]{3})*\.[0-9]{2}$");

            //Method under test
            var res = matchPatternConstraint.Matches(cells);

            var msg = new MessageWriter();
            matchPatternConstraint.WriteDescriptionTo(msg);

            //Test conclusion
            Assert.That(msg.Predicate, Is.StringContaining("cell")
                .And.StringContaining("regex"));
        }