Ejemplo n.º 1
0
        public void ExtractCodeUnits()
        {
            var codeUnits = extractor.Extract(CommonTestData.SimpleProgramWithMethodAndProperty);

            Assert.AreEqual(3, codeUnits.Count);
            CollectionAssert.AreEqual(new List <int> {
                31, 45, 51
            }, codeUnits.Select(u => u.FirstTokenIndex));

            var methodBodyUnit          = codeUnits[0];
            var methodBodyExpectedKinds = new List <SyntaxKind>
            {
                SyntaxKind.OpenBraceToken,
                SyntaxKind.IdentifierToken,
                SyntaxKind.DotToken,
                SyntaxKind.IdentifierToken,
                SyntaxKind.OpenParenToken,
                SyntaxKind.StringLiteralToken,
                SyntaxKind.CloseParenToken,
                SyntaxKind.SemicolonToken,
                SyntaxKind.CloseBraceToken,
            };

            Assert.AreEqual(methodBodyExpectedKinds.Count, methodBodyUnit.Tokens.Count);
            CollectionAssert.AreEqual(methodBodyExpectedKinds, methodBodyUnit.Tokens.Select(t => t.Kind()));
        }
Ejemplo n.º 2
0
        private int GetTokensCount(string code, Language language)
        {
            var codeUnits = codeUnitsExtractor.Extract(code, language);

            return(codeUnits.Select(u => u.Tokens.Count).Sum());
        }