┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/tests
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/dolphindetailsviewtest.cpp10
-rw-r--r--src/tests/dolphinviewtest_allviewmodes.cpp10
-rw-r--r--src/tests/testbase.cpp7
-rw-r--r--src/tests/testbase.h6
4 files changed, 18 insertions, 15 deletions
diff --git a/src/tests/dolphindetailsviewtest.cpp b/src/tests/dolphindetailsviewtest.cpp
index 87a9d253d..d17341f6f 100644
--- a/src/tests/dolphindetailsviewtest.cpp
+++ b/src/tests/dolphindetailsviewtest.cpp
@@ -98,11 +98,6 @@ void DolphinDetailsViewTest::testExpandedUrls()
QSet<KUrl> expectedExpandedUrls;
QCOMPARE(detailsView->expandedUrls(), expectedExpandedUrls);
- // Every time we expand a folder, we have to wait until the view has finished loading
- // its contents before we can expand further subfolders. We keep track of the reloading
- // using a signal spy.
- QSignalSpy spyFinishedPathLoading(&view, SIGNAL(finishedPathLoading(const KUrl&)));
-
// Expand URLs one by one and verify the result of DolphinDetailsView::expandedUrls()
QStringList itemsToExpand;
itemsToExpand << "b" << "b/a" << "b/a/c" << "b/c" << "c";
@@ -115,10 +110,7 @@ void DolphinDetailsViewTest::testExpandedUrls()
// Before we proceed, we have to make sure that the view has finished
// loading the contents of the expanded folder.
- while (spyFinishedPathLoading.isEmpty()) {
- QTest::qWait(10);
- }
- spyFinishedPathLoading.takeFirst();
+ QVERIFY(waitForFinishedPathLoading(&view));
}
// Collapse URLs one by one and verify the result of DolphinDetailsView::expandedUrls()
diff --git a/src/tests/dolphinviewtest_allviewmodes.cpp b/src/tests/dolphinviewtest_allviewmodes.cpp
index 77684984d..f357ce60c 100644
--- a/src/tests/dolphinviewtest_allviewmodes.cpp
+++ b/src/tests/dolphinviewtest_allviewmodes.cpp
@@ -198,7 +198,7 @@ void DolphinViewTest_AllViewModes::testViewPropertySettings()
// Show hidden files. This triggers the dir lister
// -> we have to wait until loading the hidden files is finished
view.setShowHiddenFiles(true);
- QVERIFY(QTest::kWaitForSignal(&view, SIGNAL(finishedPathLoading(const KUrl&)), 2000));
+ QVERIFY(waitForFinishedPathLoading(&view));
QVERIFY(view.showHiddenFiles());
QCOMPARE(viewItems(&view), QStringList() << ".f" << "a" << "b" << "c" << "d" << "e");
@@ -324,12 +324,12 @@ void DolphinViewTest_AllViewModes::testSaveAndRestoreState()
// Change the URL
view.setUrl(dir.name() + "51");
- QVERIFY(QTest::kWaitForSignal(&view, SIGNAL(finishedPathLoading(const KUrl&)), 2000));
+ QVERIFY(waitForFinishedPathLoading(&view));
qApp->sendPostedEvents();
// Go back, but do not call DolphinView::restoreState()
view.setUrl(dir.url());
- QVERIFY(QTest::kWaitForSignal(&view, SIGNAL(finishedPathLoading(const KUrl&)), 2000));
+ QVERIFY(waitForFinishedPathLoading(&view));
qApp->sendPostedEvents();
// Verify that the view is scrolled to top-left corner and that item 45 is not the current item.
@@ -343,7 +343,7 @@ void DolphinViewTest_AllViewModes::testSaveAndRestoreState()
// Change the URL again
view.setUrl(dir.name() + "51");
- QVERIFY(QTest::kWaitForSignal(&view, SIGNAL(finishedPathLoading(const KUrl&)), 2000));
+ QVERIFY(waitForFinishedPathLoading(&view));
qApp->sendPostedEvents();
// Check that the current item and scroll position are correct if DolphinView::restoreState()
@@ -351,7 +351,7 @@ void DolphinViewTest_AllViewModes::testSaveAndRestoreState()
view.setUrl(dir.url());
QDataStream restoreStream(viewState);
view.restoreState(restoreStream);
- QVERIFY(QTest::kWaitForSignal(&view, SIGNAL(finishedPathLoading(const KUrl&)), 2000));
+ QVERIFY(waitForFinishedPathLoading(&view));
qApp->sendPostedEvents();
QCOMPARE(itemView(&view)->currentIndex(), index45);
diff --git a/src/tests/testbase.cpp b/src/tests/testbase.cpp
index 59c40fb94..38909e671 100644
--- a/src/tests/testbase.cpp
+++ b/src/tests/testbase.cpp
@@ -33,10 +33,15 @@ QAbstractItemView* TestBase::itemView(const DolphinView* view)
return view->m_viewAccessor.itemView();
}
+bool TestBase::waitForFinishedPathLoading(DolphinView* view, int milliseconds)
+{
+ return QTest::kWaitForSignal(view, SIGNAL(finishedPathLoading(const KUrl&)), milliseconds);
+}
+
void TestBase::reloadViewAndWait(DolphinView* view)
{
view->reload();
- QVERIFY(QTest::kWaitForSignal(view, SIGNAL(finishedPathLoading(const KUrl&)), 2000));
+ QVERIFY(waitForFinishedPathLoading(view));
}
QStringList TestBase::viewItems(const DolphinView* view)
diff --git a/src/tests/testbase.h b/src/tests/testbase.h
index 7034cbe41..5b5d7164e 100644
--- a/src/tests/testbase.h
+++ b/src/tests/testbase.h
@@ -47,6 +47,12 @@ public:
/** Returns the item view (icons, details, or columns) */
static QAbstractItemView* itemView(const DolphinView* view);
+ /**
+ * Waits until the view emits its finishedPathLoading(const KUrl&) signal.
+ * Returns false if it is not received within the given number of milliseconds.
+ */
+ static bool waitForFinishedPathLoading(DolphinView* view, int milliseconds=2000);
+
/** Reloads the view and waits for the finishedPathLoading(const KUrl&) signal. */
static void reloadViewAndWait(DolphinView* view);