public void TryMatch_InvalidIdentifiersAreGiven_ResultIsNonmatching(string input)
        {
            var matcher = new IdentifierMatcher();

            var result = matcher.TryMatch(input);

            Assert.False(result.IsMatching);
        }
        public void TryMatch_ValidIdentifiersAreGiven_ResultHasValidProperties(string input, string expectedTokenValue, int expectedNextIndex)
        {
            var matcher = new IdentifierMatcher();

            var result = matcher.TryMatch(input);

            Assert.True(result.IsMatching);
            Assert.AreEqual(expectedTokenValue, result.Token.Value);
            Assert.AreEqual(TokenType.Identifier, result.Token.TokenType);
            Assert.AreEqual(expectedNextIndex, result.NextIndex);
        }