From 0364fae4b9930fe3d089a81805745551dfb12f4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Fl=C3=B6ser?= Date: Mon, 19 Jun 2017 21:45:58 +0200 Subject: [PATCH] [autotests] Fix ScreenEdgeClientShowTest::testScreenEdgeShowHideX11 on new CI On the new CI system this test is failing. This might be a variation of Qt 5.10 as I'm able to reproduce with Qt 5.10. From the investigation it is not a bug in KWin. The test was failing due to a missing xcb_flush. This happens when we go back to the event loop which seems not to happen in proper timing. By adding a qWait we force to go to the event loop, the flush is performed and the test passes. --- autotests/integration/screenedge_client_show_test.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/autotests/integration/screenedge_client_show_test.cpp b/autotests/integration/screenedge_client_show_test.cpp index ece4d2cc0e..0421eaa2e8 100644 --- a/autotests/integration/screenedge_client_show_test.cpp +++ b/autotests/integration/screenedge_client_show_test.cpp @@ -164,6 +164,9 @@ void ScreenEdgeClientShowTest::testScreenEdgeShowHideX11() QVERIFY(!client->isHiddenInternal()); QCOMPARE(effectsWindowShownSpy.count(), 1); + // go into event loop to trigger xcb_flush + QTest::qWait(1); + //hide window again Cursor::setPos(QPoint(640, 512)); xcb_change_property(c.data(), XCB_PROP_MODE_REPLACE, w, atom, XCB_ATOM_CARDINAL, 32, 1, &location);