<table><tr><td style="">amhndu updated this revision to Diff 43961.<br />amhndu added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D16326">View Revision</a></tr></table><br /><div><div><p>Added tests in testCompleteFunction, which already has some implements-completion<br />
tests. Should I move them to a different test, something like testImplementExecute<br />
in a different patch or this one ?</p>
<p>Completion tests are also broken, crashing after executing a single test case<br />
because of a delayed connection, triggering the slot only after the document is closed.<br />
As a workaround, I've used</p>
<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="diff" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);"><span style="color: #000080">diff --git a/plugins/clang/tests/codecompletiontestbase.cpp b/plugins/clang/tests/codecompletiontestbase.cpp</span>
<span style="color: #000080">index 5b351d0d27..282f7da36e 100644</span>
<span style="color: #a00000">--- a/plugins/clang/tests/codecompletiontestbase.cpp</span>
<span style="color: #00a000">+++ b/plugins/clang/tests/codecompletiontestbase.cpp</span>
<span style="color: #800080">@@ -70,6 +70,7 @@ void CodeCompletionTestBase::initTestCase()</span>
m_projectController = new TestProjectController(core);
core->setProjectController(m_projectController);
ICore::self()->documentController()->closeAllDocuments();
<span style="color: #00a000">+ QObject::disconnect(ICore::self()->documentController(), nullptr, nullptr, nullptr);</span>
ClangSettingsManager::self()->m_enableTesting = true;
}</pre></div>
<p>Which still has a crash, but only at the very end after executing everything.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>CHANGES SINCE LAST UPDATE</strong><div><a href="https://phabricator.kde.org/D16326?vs=43945&id=43961">https://phabricator.kde.org/D16326?vs=43945&id=43961</a></div></div><br /><div><strong>BRANCH</strong><div><div>implements-replace</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D16326">https://phabricator.kde.org/D16326</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>plugins/clang/codecompletion/context.cpp<br />
plugins/clang/tests/test_codecompletion.cpp</div></div></div><br /><div><strong>To: </strong>amhndu, KDevelop<br /><strong>Cc: </strong>apol, kdevelop-devel, glebaccon, antismap, iodelay, vbspam, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd<br /></div>