Bike.Test.LexerTest.Match C# (CSharp) Méthode

Match() private static méthode

private static Match ( string expected, string source, bool removeSpaces = true ) : void
expected string
source string
removeSpaces bool
Résultat void
        private static void Match(string expected, string source, bool removeSpaces = true)
        {
            var actual = new StringBuilder();
            var lexer = new Lexer(source);
            var token = lexer.NextToken();
            while (token.Type != TokenType.Eof)
            {
                switch (token.Type)
                {
                    case TokenType.Number:
                        actual.Append("n$").Append(token.Text);
                        break;
                    case TokenType.String:
                        actual.Append("'").Append(token.Text).Append("'");
                        break;
                    case TokenType.Identifier:
                        actual.Append("i$").Append(token.Text);
                        break;
                    case TokenType.Dot:
                        actual.Append("d$").Append(token.Text);
                        break;
                    default:
                        if (token.Type.IsKeyword())
                            actual.Append("k$").Append(token.Text);
                        else
                            actual.Append(token.Text);
                        break;
                }
                token = lexer.NextToken();
            }
            actual.Append(token.Text);
            if (removeSpaces)
                expected = expected.Replace(Environment.NewLine, string.Empty).Replace(" ", string.Empty);
            Assert.AreEqual(expected, actual.ToString());
        }