public void DigitsRegexMatcher()
        {
            var re = new RegexMatcher("\\d{3,}", 10);

            var res = re.MatchPassword("abc123def");

            Assert.AreEqual(1, res.Count());
            var m1 = res.First();

            Assert.AreEqual(3, m1.Begin);
            Assert.AreEqual(5, m1.End);
            Assert.AreEqual("123", m1.Token);

            res = re.MatchPassword("123456789a12345b1234567");
            Assert.AreEqual(3, res.Count());
            var m3 = res.ElementAt(2);

            Assert.AreEqual("1234567", m3.Token);

            res = re.MatchPassword("12");
            Assert.AreEqual(0, res.Count());

            res = re.MatchPassword("dfsdfdfhgjkdfngjl");
            Assert.AreEqual(0, res.Count());
        }
Exemple #2
0
        public void MatchesNoMatch()
        {
            var re = new RegexMatcher("\\d{3,}", 10);

            var res = re.MatchPassword("12");

            res.Should().BeEmpty();

            res = re.MatchPassword("dfsdfdfhgjkdfngjl");
            res.Should().BeEmpty();
        }
Exemple #3
0
        public void MatchesMultiple()
        {
            var re = new RegexMatcher("\\d{3,}", 10);

            var res = re.MatchPassword("123456789a12345b1234567").ToList();

            res.Count.Should().Be(3);

            res[2].i.Should().Be(16);
            res[2].j.Should().Be(22);
            res[2].Token.Should().Be("1234567");
        }
Exemple #4
0
        public void MatchesMidString()
        {
            var re = new RegexMatcher("\\d{3,}", 10);

            var res = re.MatchPassword("abc123def").ToList();

            res.Count.Should().Be(1);

            res[0].i.Should().Be(3);
            res[0].j.Should().Be(5);
            res[0].Token.Should().Be("123");
        }
        public void MatchesPattern(string pattern, string name)
        {
            var re = new RegexMatcher(pattern, name);

            var result = re.MatchPassword(pattern).OfType <RegexMatch>().ToList();

            var expected = new[]
            {
                new RegexMatch
                {
                    i         = 0,
                    j         = pattern.Length - 1,
                    RegexName = name,
                    Token     = pattern,
                },
            };

            result.Should().BeEquivalentTo(expected);
        }