aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cpptools/cpplocatorfilter_test.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@digia.com>2013-12-16 16:02:45 +0100
committerNikolai Kosjar <nikolai.kosjar@digia.com>2014-01-07 14:19:13 +0100
commit5c8df5fa4ec4a8f30261dc4d53a810f7be65df51 (patch)
tree2abcbc02f94c15f4d26a5399c1ea31b4183923e7 /src/plugins/cpptools/cpplocatorfilter_test.cpp
parent5aa8a63f90934619072242ac0f6f5fca128edd39 (diff)
CppEditor/CppTools: Introduce Test{Case,Document}
Move common functionality of the 12 test classes into base classes. Change-Id: If64d3cec876807ac6f991151189860a99b8ff4ca Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cpplocatorfilter_test.cpp')
-rw-r--r--src/plugins/cpptools/cpplocatorfilter_test.cpp55
1 files changed, 17 insertions, 38 deletions
diff --git a/src/plugins/cpptools/cpplocatorfilter_test.cpp b/src/plugins/cpptools/cpplocatorfilter_test.cpp
index 02262ccf6c8..8c7040e817f 100644
--- a/src/plugins/cpptools/cpplocatorfilter_test.cpp
+++ b/src/plugins/cpptools/cpplocatorfilter_test.cpp
@@ -34,6 +34,7 @@
#include "cppfunctionsfilter.h"
#include "cpplocatorfilter.h"
#include "cppmodelmanager.h"
+#include "cpptoolstestcase.h"
#include <coreplugin/editormanager/editormanager.h>
#include <coreplugin/testdatadir.h>
@@ -58,69 +59,53 @@ Q_DECLARE_METATYPE(ILocatorFilter *)
namespace {
-class MyTestDataDir : public Core::Internal::Tests::TestDataDir
-{
-public:
- MyTestDataDir(const QString &testDataDirectory)
- : TestDataDir(QLatin1String(SRCDIR "/../../../tests/cpplocators/") + testDataDirectory) {}
-};
+QTC_DECLARE_MYTESTDATADIR("../../../tests/cpplocators/")
+
+inline QString _(const QByteArray &ba) { return QString::fromLatin1(ba, ba.size()); }
-class CppLocatorFilterTest : public BasicLocatorFilterTest
+} // anonymous namespace
+
+class CppLocatorFilterTest : public BasicLocatorFilterTest, public CppTools::Tests::TestCase
{
public:
CppLocatorFilterTest(ILocatorFilter *filter, const QString &fileName)
: BasicLocatorFilterTest(filter)
- , m_modelManager(CppModelManager::instance())
, m_fileName(fileName)
{
QVERIFY(!m_fileName.isEmpty());
- m_modelManager->GC();
- QVERIFY(m_modelManager->snapshot().isEmpty());
+ QVERIFY(garbageCollectGlobalSnapshot());
}
private:
- virtual void doBeforeLocatorRun()
- {
- m_modelManager->updateSourceFiles(QStringList() << m_fileName).waitForFinished();
- QCoreApplication::processEvents();
- QVERIFY(m_modelManager->snapshot().contains(m_fileName));
- }
-
- virtual void doAfterLocatorRun()
- {
- m_modelManager->GC();
- QVERIFY(m_modelManager->snapshot().isEmpty());
- }
+ virtual void doBeforeLocatorRun() { QVERIFY(parseFiles(m_fileName)); }
+ virtual void doAfterLocatorRun() { QVERIFY(garbageCollectGlobalSnapshot()); }
- CppModelManager *m_modelManager;
const QString m_fileName;
};
-class CppCurrentDocumentFilterTest : public BasicLocatorFilterTest
+class CppCurrentDocumentFilterTest
+ : public BasicLocatorFilterTest
+ , public CppTools::Tests::TestCase
{
public:
CppCurrentDocumentFilterTest(const QString &fileName)
: BasicLocatorFilterTest(PluginManager::getObject<CppCurrentDocumentFilter>())
- , m_modelManager(CppModelManager::instance())
, m_editor(0)
, m_fileName(fileName)
{
QVERIFY(!m_fileName.isEmpty());
- m_modelManager->GC();
- QVERIFY(m_modelManager->snapshot().isEmpty());
}
private:
virtual void doBeforeLocatorRun()
{
QVERIFY(EditorManager::documentModel()->openedDocuments().isEmpty());
- m_modelManager->GC();
- QVERIFY(m_modelManager->snapshot().isEmpty());
+ QVERIFY(garbageCollectGlobalSnapshot());
m_editor = EditorManager::openEditor(m_fileName);
QVERIFY(m_editor);
- while (!m_modelManager->snapshot().contains(m_fileName))
- QCoreApplication::processEvents();
+
+ waitForFileInGlobalSnapshot(m_fileName);
}
virtual void doAfterLocatorRun()
@@ -128,19 +113,13 @@ private:
EditorManager::closeEditor(m_editor, /*askAboutModifiedEditors=*/ false);
QCoreApplication::processEvents();
QVERIFY(EditorManager::documentModel()->openedDocuments().isEmpty());
- m_modelManager->GC();
- QVERIFY(m_modelManager->snapshot().isEmpty());
+ QVERIFY(garbageCollectGlobalSnapshot());
}
- CppModelManager *m_modelManager;
IEditor *m_editor;
const QString m_fileName;
};
-inline QString _(const QByteArray &ba) { return QString::fromLatin1(ba, ba.size()); }
-
-} // anonymous namespace
-
void CppToolsPlugin::test_cpplocatorfilters_CppLocatorFilter()
{
QFETCH(QString, testFile);