diff options
| author | Frank Reininghaus <[email protected]> | 2013-02-17 12:12:52 +0100 |
|---|---|---|
| committer | Frank Reininghaus <[email protected]> | 2013-02-17 12:12:52 +0100 |
| commit | ba314579113b9ce4b2856b446a17d7ea4ce22117 (patch) | |
| tree | 9d6e0b088d32906979295149fc3e71f7b7c2b793 /src/tests/kitemlistcontrollertest.cpp | |
| parent | fc0c3f9d4e13d3c7ff3fb56e84458e62abf3ad4b (diff) | |
Another fix for KItemListControllerTest::testMouseClickActivation()
One one machine, I see that changing the global "single click" setting
fails. I don't know why that is the case, but I think we should better
just skip the test in that case and not hang forever.
Diffstat (limited to 'src/tests/kitemlistcontrollertest.cpp')
| -rw-r--r-- | src/tests/kitemlistcontrollertest.cpp | 44 |
1 files changed, 40 insertions, 4 deletions
diff --git a/src/tests/kitemlistcontrollertest.cpp b/src/tests/kitemlistcontrollertest.cpp index 279096655..d8f838873 100644 --- a/src/tests/kitemlistcontrollertest.cpp +++ b/src/tests/kitemlistcontrollertest.cpp @@ -548,9 +548,19 @@ void KItemListControllerTest::testMouseClickActivation() group.writeEntry("SingleClick", true, KConfig::Persistent|KConfig::Global); config.sync(); KGlobalSettings::self()->emitChange(KGlobalSettings::SettingsChanged, KGlobalSettings::SETTINGS_MOUSE); - while (!KGlobalSettings::singleClick()) { + + int iterations = 0; + const int maxIterations = 20; + while (!KGlobalSettings::singleClick() && iterations < maxIterations) { QTest::qWait(50); + ++iterations; + } + + if (!KGlobalSettings::singleClick()) { + // TODO: Try to find a way to make sure that changing the global setting works. + QSKIP("Failed to change the KGlobalSettings::singleClick() setting!", SkipSingle); } + m_view->event(&mousePressEvent); m_view->event(&mouseReleaseEvent); QCOMPARE(spyItemActivated.count(), 1); @@ -560,9 +570,18 @@ void KItemListControllerTest::testMouseClickActivation() group.writeEntry("SingleClick", false, KConfig::Persistent|KConfig::Global); config.sync(); KGlobalSettings::self()->emitChange(KGlobalSettings::SettingsChanged, KGlobalSettings::SETTINGS_MOUSE); - while (KGlobalSettings::singleClick()) { + + iterations = 0; + while (KGlobalSettings::singleClick() && iterations < maxIterations) { QTest::qWait(50); + ++iterations; + } + + if (KGlobalSettings::singleClick()) { + // TODO: Try to find a way to make sure that changing the global setting works. + QSKIP("Failed to change the KGlobalSettings::singleClick() setting!", SkipSingle); } + m_view->event(&mousePressEvent); m_view->event(&mouseReleaseEvent); QCOMPARE(spyItemActivated.count(), 0); @@ -586,9 +605,18 @@ void KItemListControllerTest::testMouseClickActivation() group.writeEntry("SingleClick", true, KConfig::Persistent|KConfig::Global); config.sync(); KGlobalSettings::self()->emitChange(KGlobalSettings::SettingsChanged, KGlobalSettings::SETTINGS_MOUSE); - while (!KGlobalSettings::singleClick()) { + + iterations = 0; + while (!KGlobalSettings::singleClick() && iterations < maxIterations) { QTest::qWait(50); + ++iterations; + } + + if (!KGlobalSettings::singleClick()) { + // TODO: Try to find a way to make sure that changing the global setting works. + QSKIP("Failed to change the KGlobalSettings::singleClick() setting!", SkipSingle); } + m_view->event(&mousePressEvent); m_view->event(&mouseReleaseEvent); QCOMPARE(spyItemActivated.count(), 1); @@ -606,8 +634,16 @@ void KItemListControllerTest::testMouseClickActivation() group.writeEntry("SingleClick", restoreKGlobalSettingsSingleClick, KConfig::Persistent|KConfig::Global); config.sync(); KGlobalSettings::self()->emitChange(KGlobalSettings::SettingsChanged, KGlobalSettings::SETTINGS_MOUSE); - while (KGlobalSettings::singleClick() != restoreKGlobalSettingsSingleClick) { + + iterations = 0; + while (KGlobalSettings::singleClick() != restoreKGlobalSettingsSingleClick && iterations < maxIterations) { QTest::qWait(50); + ++iterations; + } + + if (KGlobalSettings::singleClick() != restoreKGlobalSettingsSingleClick) { + // TODO: Try to find a way to make sure that changing the global setting works. + QSKIP("Failed to change the KGlobalSettings::singleClick() setting!", SkipSingle); } } |
