public void FindInputNullMatch()
        {
            // Arrange
            var subText  = "Polly";
            var service  = new TextMatchService();
            var expected = string.Empty;

            // Act
            var actual = service.FindMatches(null, subText);

            // Assert
        }
        public void FindSubTextEmptyMatch()
        {
            // Arrange
            var service  = new TextMatchService();
            var expected = string.Empty;

            // Act
            var actual = service.FindMatches(_inputText, "");

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void FindBothNullMatch()
        {
            // Arrange
            var service  = new TextMatchService();
            var expected = string.Empty;

            // Act
            var actual = service.FindMatches(null, null);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void TestSubTextWordMatch()
        {
            // Arrange
            var subText  = "Polly";
            var service  = new TextMatchService();
            var expected = "1,26,51";

            // Act
            var actual = service.FindMatches(_inputText, subText);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void FindInputEmptyMatch()
        {
            // Arrange
            var subText  = "Polly";
            var service  = new TextMatchService();
            var expected = string.Empty;

            // Act
            var actual = service.FindMatches(string.Empty, subText);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void TestSubTextOverRunMatch()
        {
            // Arrange
            var subText  = "Teal";
            var service  = new TextMatchService();
            var expected = string.Empty;

            // Act
            var actual = service.FindMatches(_inputText, subText);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void TestSubTextPartialWordMatch()
        {
            // Arrange
            var subText  = "ll";
            var service  = new TextMatchService();
            var expected = "3,28,53,78,82";

            // Act
            var actual = service.FindMatches(_inputText, subText);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void TestSubTextSpansWordMatch()
        {
            // Arrange
            var subText  = " on, polly put ";
            var service  = new TextMatchService();
            var expected = "21,46";

            // Act
            var actual = service.FindMatches(_inputText, subText);

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void CharMatchCaseInsenitive()
        {
            // Arrange
            var service = new TextMatchService();

            // Act
            // Assert

            // Test A == B
            Assert.IsFalse(service.CharMatchCaseInsenitive('A', 'B'));
            // Test a == b
            Assert.IsFalse(service.CharMatchCaseInsenitive('a', 'b'));
            // Test a == A
            Assert.IsTrue(service.CharMatchCaseInsenitive('a', 'A'));
            // Test B == B
            Assert.IsTrue(service.CharMatchCaseInsenitive('B', 'B'));
            // Test C == c
            Assert.IsTrue(service.CharMatchCaseInsenitive('C', 'c'));
        }
 public TextMatchServiceUnitTests()
 {
     _service = new TextMatchService();
 }