コード例 #1
0
        public void RegexWildcard_Core()
        {
            // Arrange
            var testString               = "ate Ape are";
            var fullWildcard             = new Wildcard("* are*");
            var partialWildcard          = new Wildcard("a?e", RegexOptions.IgnoreCase, false, false);
            var expected_full_IsMatch    = true;
            var expected_full_NumMatches = 1;
            var expected_part_IsMatch    = true;
            var expected_part_NumMatches = 3;
            var expected_part_2ndMatch   = "Ape";

            Console.WriteLine(fullWildcard.ToString());
            Console.WriteLine(partialWildcard.ToString());

            // Act
            var fullMatches            = fullWildcard.Matches(testString);
            var actual_full_IsMatch    = fullWildcard.IsMatch(testString);
            var actual_full_NumMatches = fullMatches.Count;

            var partialMatches         = partialWildcard.Matches(testString);
            var actual_part_IsMatch    = partialWildcard.IsMatch(testString);
            var actual_part_NumMatches = partialMatches.Count;
            var actual_part_2ndMatch   = partialMatches[1].ToString();

            // Assert
            Assert.AreEqual(expected_full_IsMatch, actual_full_IsMatch);
            Assert.AreEqual(expected_full_NumMatches, actual_full_NumMatches);
            Assert.AreEqual(expected_part_IsMatch, actual_part_IsMatch);
            Assert.AreEqual(expected_part_NumMatches, actual_part_NumMatches);
            Assert.AreEqual(expected_part_2ndMatch, actual_part_2ndMatch);
        }