public void LexerLexesToken(NonSeparatorTokenTestData test) { var tokens = SyntaxTree.ParseTokens(test.Text); var token = Assert.Single(tokens); Assert.NotNull(token); Assert.Equal(test.Kind, token.Kind); Assert.Equal(test.Text, token.Text); }
public void LexerLexesTwoTokensWithSeparator( NonSeparatorTokenTestData expectedToken1, SeparatorTokenTestData expectedSepToken, NonSeparatorTokenTestData expectedToken2 ) { var tokens = SyntaxTree.ParseTokens( expectedToken1.Text + expectedSepToken.Text + expectedToken2.Text ); Assert.Collection( tokens, token1 => { Assert.NotNull(token1); Assert.Equal(expectedToken1.Kind, token1.Kind); Assert.Equal(expectedToken1.Text, token1.Text); Assert.Collection( token1.TrailingTrivia, sepToken => { Assert.NotNull(sepToken); Assert.Equal(expectedSepToken.Kind, sepToken.Kind); Assert.Equal(expectedSepToken.Text, sepToken.Text); } ); }, token2 => { Assert.NotNull(token2); Assert.Equal(expectedToken2.Kind, token2.Kind); Assert.Equal(expectedToken2.Text, token2.Text); } ); }
public TokenPairTestData(NonSeparatorTokenTestData token1, NonSeparatorTokenTestData token2) { Token1 = token1; Token2 = token2; }