summaryrefslogtreecommitdiff
path: root/desktop
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2020-04-21 11:57:47 +0200
committerMiklos Vajna <vmiklos@collabora.com>2020-04-22 09:26:46 +0200
commitffb4ce52ea32fbaf4944a5b5072d6385eccf3cb3 (patch)
tree702512101fb6b8d422b904d09d09e2f6a8a181f5 /desktop
parentc763ff8c7fb47432a4942eb5b9c010d2a1117e5f (diff)
Make hide lok dialog test reliable
On slower machines actions were reported in different order Change-Id: I8effea3a9d114ffb0e9ebed2c18fde046490fe07 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92615 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'desktop')
-rw-r--r--desktop/qa/desktop_lib/test_desktop_lib.cxx13
1 files changed, 9 insertions, 4 deletions
diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx b/desktop/qa/desktop_lib/test_desktop_lib.cxx
index e699f797c290..c243b75a25f8 100644
--- a/desktop/qa/desktop_lib/test_desktop_lib.cxx
+++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx
@@ -1871,6 +1871,7 @@ public:
tools::Rectangle m_aOwnCursor;
boost::property_tree::ptree m_aCommentCallbackResult;
boost::property_tree::ptree m_aCallbackWindowResult;
+ bool m_bWindowHidden;
ViewCallback(LibLODocument_Impl* pDocument)
: mpDocument(pDocument),
@@ -1926,6 +1927,10 @@ public:
m_aCallbackWindowResult.clear();
std::stringstream aStream(pPayload);
boost::property_tree::read_json(aStream, m_aCallbackWindowResult);
+
+ std::string sAction = m_aCallbackWindowResult.get<std::string>("action");
+ if (sAction == "hide")
+ m_bWindowHidden = true;
}
break;
case LOK_CALLBACK_CELL_FORMULA:
@@ -2666,15 +2671,15 @@ void DesktopLOKTest::testShowHideDialog()
VclPtr<vcl::Window> pWindow(Application::GetActiveTopWindow());
CPPUNIT_ASSERT(pWindow);
+ aView.m_bWindowHidden = false;
+
pWindow->Hide();
Scheduler::ProcessEventsToIdle();
- CPPUNIT_ASSERT_EQUAL(std::string("hide"), aView.m_aCallbackWindowResult.get<std::string>("action"));
+ CPPUNIT_ASSERT_EQUAL(true, aView.m_bWindowHidden);
- pWindow->Show();
+ static_cast<SystemWindow*>(pWindow.get())->Close();
Scheduler::ProcessEventsToIdle();
-
- CPPUNIT_ASSERT_EQUAL(std::string("invalidate"), aView.m_aCallbackWindowResult.get<std::string>("action"));
}
void DesktopLOKTest::testComplexSelection()