From: Frank Reininghaus Date: Tue, 9 Nov 2010 08:33:45 +0000 (+0000) Subject: 1. Add method TestBase::reloadViewAndWait(). X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/1a032453950a058eba3cb0695a7331737330add3 1. Add method TestBase::reloadViewAndWait(). 2. Remove some debug output from DolphinDetailsViewTest - it seems that the test failure I saw on cdash.org is due to a failing kioslave, which is probably not Dolphin's fault. svn path=/trunk/KDE/kdebase/apps/; revision=1194514 --- diff --git a/src/tests/dolphindetailsviewtest.cpp b/src/tests/dolphindetailsviewtest.cpp index 323806a0e..20d5daebd 100644 --- a/src/tests/dolphindetailsviewtest.cpp +++ b/src/tests/dolphindetailsviewtest.cpp @@ -34,28 +34,17 @@ #include #include -#include "kdebug.h" - class DolphinDetailsViewTest : public TestBase { Q_OBJECT private slots: - void initTestCase(); - void bug217447_shiftArrowSelection(); void bug234600_overlappingIconsWhenZooming(); }; -void DolphinDetailsViewTest::initTestCase() -{ - // add time stamps to find origin of test failures due to timeout at - // http://my.cdash.org/index.php?project=kdebase&date= - qputenv("KDE_DEBUG_TIMESTAMP", QByteArray("1")); -} - /** * When the first item in the view is active and Shift is held while the "arrow down" * key is pressed repeatedly, the selection should grow by one item for each key press. @@ -88,14 +77,7 @@ void DolphinDetailsViewTest::bug217447_shiftArrowSelection() m_view->resize(1000, 400); m_view->show(); QTest::qWaitForWindowShown(m_view); - - // We have to make sure that the view has loaded the directory before we start the test. - // TODO: This will be needed frequently. Maybe move to TestHelper. - QSignalSpy finished(m_view, SIGNAL(finishedPathLoading(const KUrl&))); - m_view->reload(); - while (finished.count() != 1) { - QTest::qWait(50); - } + reloadViewAndWait(); // Select the first item QModelIndex index0 = detailsView->model()->index(0, 0); @@ -165,16 +147,7 @@ void DolphinDetailsViewTest::bug234600_overlappingIconsWhenZooming() m_view->resize(400, 400); m_view->show(); QTest::qWaitForWindowShown(m_view); - - // We have to make sure that the view has loaded the directory before we start the test. - // TODO: This will be needed frequently. Maybe move to TestHelper. - kDebug() << "Reloading view and waiting for the finishedPathLoading(const KUrl&) signal..."; - QSignalSpy finished(m_view, SIGNAL(finishedPathLoading(const KUrl&))); - m_view->reload(); - while (finished.count() != 1) { - QTest::qWait(50); - } - kDebug() << "...signal received, continuing"; + reloadViewAndWait(); QModelIndex index0 = detailsView->model()->index(0, 0); detailsView->setCurrentIndex(index0); @@ -189,12 +162,9 @@ void DolphinDetailsViewTest::bug234600_overlappingIconsWhenZooming() detailsView->setCurrentIndex(index1); QCOMPARE(detailsView->currentIndex(), index1); - kDebug() << "Now checking zoom levels..."; - // Increase the zoom level successively to the maximum. while(zoomLevel < ZoomLevelInfo::maximumLevel()) { zoomLevel++; - kDebug() << "Testing zoom level" << zoomLevel; m_view->setZoomLevel(zoomLevel); //Check for each zoom level that the height of each item is at least the icon size. @@ -202,10 +172,7 @@ void DolphinDetailsViewTest::bug234600_overlappingIconsWhenZooming() } m_view->hide(); - - kDebug() << "Cleaning up test directory..."; cleanupTestDir(); - kDebug() << "Done."; } QTEST_KDEMAIN(DolphinDetailsViewTest, GUI) diff --git a/src/tests/testbase.cpp b/src/tests/testbase.cpp index 5945cd258..0fd48cbd2 100644 --- a/src/tests/testbase.cpp +++ b/src/tests/testbase.cpp @@ -19,6 +19,8 @@ #include "testbase.h" +#include + #include "views/dolphinview.h" #include "views/dolphinmodel.h" #include "views/dolphindirlister.h" @@ -29,6 +31,8 @@ #include #include +#include + TestBase::TestBase() { m_tempDir = new KTempDir; @@ -60,6 +64,16 @@ QAbstractItemView* TestBase::itemView () const return m_view->m_viewAccessor.itemView(); } +void TestBase::reloadViewAndWait() +{ + kDebug() << "Reloading view and waiting for the finishedPathLoading(const KUrl&) signal..."; + QSignalSpy finished(m_view, SIGNAL(finishedPathLoading(const KUrl&))); + m_view->reload(); + while (finished.count() != 1) { + QTest::qWait(50); + } + kDebug() << "...signal received, continuing"; +} KUrl TestBase::testDirUrl() const { diff --git a/src/tests/testbase.h b/src/tests/testbase.h index 121c230ca..a940a5296 100644 --- a/src/tests/testbase.h +++ b/src/tests/testbase.h @@ -49,7 +49,10 @@ public: ~TestBase(); // Returns the item view (icons, details, or columns) - QAbstractItemView* itemView () const; + QAbstractItemView* itemView() const; + + // Reloads the view and waits for the finishedPathLoading(const KUrl&) signal. + void reloadViewAndWait(); KUrl testDirUrl() const;