MCPcopy Create free account
hub / github.com/KDE/kdevelop / testOverrideExecute

Method testOverrideExecute

plugins/clang/tests/test_codecompletion.cpp:747–777  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

745}
746
747void TestCodeCompletion::testOverrideExecute()
748{
749 QFETCH(QString, code);
750 QFETCH(CompletionItems, expectedItems);
751 QFETCH(QString, itemToExecute);
752 QFETCH(QString, cppStandard);
753 QFETCH(QString, expectedCode);
754
755 QTemporaryDir directory;
756 TestProject testProject {Path{directory.path()}};
757 auto t = testProject.path().toLocalFile();
758 auto configGroup = testProject.projectConfiguration()->group(definesAndIncludesConfigName).group("ProjectPath0");
759 configGroup.writeEntry("Path", ".");
760 configGroup.writeEntry("parserArguments", cppStandard);
761 configGroup.sync();
762 m_projectController->addProject(&testProject);
763
764 TestFile file(code, QStringLiteral("cpp"), &testProject, directory.path());
765 QVERIFY(file.parseAndWait(TopDUContext::AllDeclarationsContextsUsesAndAST));
766
767 auto executeItem = [=] (const ClangCodeCompletionItemTester& tester) {
768 auto item = tester.findItem(itemToExecute);
769 QVERIFY(item);
770 auto view = createView(tester.completionContext->duContext()->url().toUrl());
771 DUChainReadLocker lock;
772 item->execute(view.get(), view->document()->wordRangeAt(expectedItems.position));
773 QCOMPARE(view->document()->text(), expectedCode);
774 };
775 executeCompletionTest(file.topContext(), expectedItems, NoMacroOrBuiltin, executeItem);
776 m_projectController->closeProject(&testProject);
777}
778
779void TestCodeCompletion::testOverrideExecute_data()
780{

Callers

nothing calls this directly

Calls 15

executeCompletionTestFunction · 0.85
toLocalFileMethod · 0.80
writeEntryMethod · 0.80
parseAndWaitMethod · 0.80
duContextMethod · 0.80
pathMethod · 0.45
projectConfigurationMethod · 0.45
addProjectMethod · 0.45
findItemMethod · 0.45
toUrlMethod · 0.45
urlMethod · 0.45
executeMethod · 0.45

Tested by

no test coverage detected