Beispiel #1
0
        protected virtual void TestQueryAllReturnsExpected(string code, TestSourceKind codeKind, string query, params string[] expected)
        {
            var current = TestSyntaxFactory.Parse(code, codeKind);
            var results = new RoslynCSharpSyntaxQueryExecutor().QueryAll(current, ParseQuery(query));

            Assert.Equal(expected, results.Select(r => r.ToString()).ToArray());
        }
        protected override void TestQueryAllReturnsExpected(string code, TestSourceKind codeKind, string query, params string[] expected)
        {
            var results = new RiderCSharpSyntaxQueryExecutor().QueryAll(
                ParseCSharp(code, codeKind), ParseQuery(query)
                );

            Assert.Equal(expected, results.Select(r => r.GetText()).ToArray());
        }
        private ITreeNode ParseCSharp(string code, TestSourceKind codeKind)
        {
            if (codeKind == TestSourceKind.Statement)
            {
                return(ParseCSharpStatement(code));
            }

            var language        = new TestCSharpLanguage();
            var languageService = new CSharpLanguageService(
                language,
                new CSharpConstantValueService(new CSharpConstantValuePresenter(language)),
                Mock.Of <ICSharpCodeFormatter>(),
                new CommonIdentifierIntern()
                );

            language.SetLanguageService(languageService);
            typeof(CSharpLanguage).GetField("Instance", BindingFlags.Public | BindingFlags.Static).SetValue(null, language);
            var file = MockPsiSourceFile();

            return(languageService.ParseFile(new CSharpLexer(new StringBuffer(code)), file));
        }