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()); }
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(); }
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"); }
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); }