X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=tests%2Fauto%2Fwidgets%2Fkernel%2Fqwidget%2Ftst_qwidget.cpp;h=4ea6d4970a27174f4e8895aa582b2905cb485460;hb=822c2c945707c8db2a2f459546556a1e362f03d9;hp=ce4eb2843b40d8318bb785e27463279350cded27;hpb=a385ba17d247da6bd9ae584886c0ca8de7c2fb10;p=profile%2Fivi%2Fqtbase.git diff --git a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp index ce4eb28..4ea6d49 100644 --- a/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp +++ b/tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp @@ -1684,19 +1684,23 @@ void tst_QWidget::activation() widget2.showMinimized(); QTest::qWait(waitTime); + QEXPECT_FAIL("", "QTBUG-26418", Continue); QVERIFY(qApp->activeWindow() == &widget1); widget2.showMaximized(); QTest::qWait(waitTime); QVERIFY(qApp->activeWindow() == &widget2); widget2.showMinimized(); QTest::qWait(waitTime); + QEXPECT_FAIL("", "QTBUG-26418", Continue); QVERIFY(qApp->activeWindow() == &widget1); widget2.showNormal(); QTest::qWait(waitTime); +#if 0 // QTBUG-26418, widget2 is always set to active #ifndef Q_OS_WINCE if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA) QEXPECT_FAIL("", "MS introduced new behavior after XP", Continue); #endif +#endif QTest::qWait(waitTime); QVERIFY(qApp->activeWindow() == &widget2); widget2.hide(); @@ -1779,12 +1783,21 @@ void tst_QWidget::windowState() widget1.setWindowState(widget1.windowState() ^ Qt::WindowMinimized); QTest::qWait(100); +#ifdef Q_OS_WIN + QEXPECT_FAIL("", "QTBUG-26420", Continue); +#endif VERIFY_STATE((Qt::WindowFullScreen|Qt::WindowMinimized)); QCOMPARE(widget1.windowHandle()->windowState(), Qt::WindowMinimized); widget1.setWindowState(widget1.windowState() ^ Qt::WindowMinimized); QTest::qWait(100); +#ifdef Q_OS_WIN + QEXPECT_FAIL("", "QTBUG-26420", Continue); +#endif VERIFY_STATE(Qt::WindowFullScreen); +#ifdef Q_OS_WIN + QEXPECT_FAIL("", "QTBUG-26420", Continue); +#endif QCOMPARE(widget1.windowHandle()->windowState(), Qt::WindowFullScreen); widget1.setWindowState(Qt::WindowNoState); @@ -1803,6 +1816,10 @@ void tst_QWidget::windowState() VERIFY_STATE((Qt::WindowFullScreen|Qt::WindowMaximized)); QCOMPARE(widget1.windowHandle()->windowState(), Qt::WindowFullScreen); +#ifdef Q_OS_WIN + QSKIP("QTBUG-26420"); +#endif + widget1.setWindowState(widget1.windowState() ^ Qt::WindowMinimized); QTest::qWait(100); VERIFY_STATE((Qt::WindowFullScreen|Qt::WindowMaximized|Qt::WindowMinimized)); @@ -2012,6 +2029,8 @@ void tst_QWidget::resizeEvent() { ResizeWidget wTopLevel; wTopLevel.show(); + if (m_platform == QStringLiteral("windows")) + QSKIP("QTBUG-26424"); QCOMPARE (wTopLevel.m_resizeEventCount, 1); // initial resize event before paint for toplevels wTopLevel.hide(); QSize safeSize(640,480); @@ -2068,6 +2087,9 @@ void tst_QWidget::showMinimized() void tst_QWidget::showMinimizedKeepsFocus() { + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); + //here we test that minimizing a widget and restoring it doesn't change the focus inside of it { QWidget window; @@ -2227,10 +2249,12 @@ void tst_QWidget::reparent() child.setGeometry(childPos.x(), childPos.y(), child.width(), child.height()); child.show(); +#if 0 // QTBUG-26424 if (m_platform == QStringLiteral("xcb")) QEXPECT_FAIL("", "On X11, the window manager will apply NorthWestGravity rules to 'child', which" " means the top-left corner of the window frame will be placed at 'childPos'" " causing this test to fail.", Continue); +#endif QCOMPARE(child.geometry().topLeft(), childPos); QTRY_COMPARE(childTLW.pos(), tlwPos); @@ -2339,6 +2363,8 @@ void tst_QWidget::normalGeometry() QTest::qWait(10); parent.setWindowState(parent.windowState() ^ Qt::WindowMaximized); QTest::qWait(10); + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); QTRY_VERIFY(parent.windowState() & (Qt::WindowMinimized|Qt::WindowMaximized)); // ### when minimized and maximized at the same time, the geometry // ### does *NOT* have to be the normal geometry, it could be the @@ -2383,6 +2409,7 @@ void tst_QWidget::normalGeometry() QTRY_COMPARE(parent.geometry(), geom); QTRY_COMPARE(parent.normalGeometry(), geom); + QSKIP("QTBUG-26420"); parent.showNormal(); parent.setWindowState(Qt:: WindowFullScreen | Qt::WindowMaximized); parent.setWindowState(Qt::WindowMinimized | Qt:: WindowFullScreen | Qt::WindowMaximized); @@ -2414,8 +2441,9 @@ void tst_QWidget::setGeometry() QTest::qWait(50); if (tlw.frameGeometry() != tlw.geometry()) QSKIP("Your window manager is too broken for this test"); + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); QCOMPARE(tlw.geometry(), tr); - } // Windows CE does not support windowOpacity. @@ -2921,6 +2949,9 @@ void tst_QWidget::saveRestoreGeometry() QVERIFY(widget.restoreGeometry(savedGeometry)); QTest::qWait(120); QTRY_VERIFY(!(widget.windowState() & Qt::WindowFullScreen)); +#ifdef Q_OS_WIN + QEXPECT_FAIL("", "QTBUG-26421", Continue); +#endif QTRY_COMPARE(widget.geometry(), geom); //Restore to full screen @@ -3040,6 +3071,9 @@ void tst_QWidget::restoreVersion1Geometry() widget.showNormal(); QTest::qWait(10); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QSKIP("QTBUG-26421"); + if (expectedWindowState != Qt::WindowNoState) { // restoring from maximized or fullscreen, we can only restore to the normal geometry QTRY_COMPARE(widget.geometry(), expectedNormalGeometry); @@ -3506,6 +3540,8 @@ void tst_QWidget::optimizedResize_topLevel() expectedUpdateRegion -= QRect(QPoint(), topLevel.size() - QSize(10, 10)); QTRY_COMPARE(topLevel.gotPaintEvent, true); + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); QCOMPARE(topLevel.partial, true); QCOMPARE(topLevel.paintedRegion, expectedUpdateRegion); } @@ -3609,6 +3645,8 @@ void tst_QWidget::setFixedSize() w.setFixedSize(defaultSize + QSize(150, 150)); w.show(); QTest::qWait(50); + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); QVERIFY(w.size() == defaultSize + QSize(150,150)); } @@ -3699,6 +3737,8 @@ void tst_QWidget::winIdChangeEvent() QCOMPARE(child.winIdChangeEventCount(), 1); child.setParent(&parent2); const WId winIdAfter = child.internalWinId(); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(winIdBefore != winIdAfter); QCOMPARE(child.winIdChangeEventCount(), 3); // winId is set to zero during reparenting @@ -3739,6 +3779,8 @@ void tst_QWidget::winIdChangeEvent() const Qt::WindowFlags flags = child.windowFlags(); child.setWindowFlags(flags | Qt::Window); const WId winIdAfter = child.internalWinId(); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(winIdBefore != winIdAfter); QCOMPARE(child.winIdChangeEventCount(), 3); // winId is set to zero during reparenting @@ -3762,41 +3804,57 @@ void tst_QWidget::persistentWinId() // reparenting should change the winId of the widget being reparented, but not of its children w1->setParent(0); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w1->winId() != winId1); winId1 = w1->winId(); QCOMPARE(w2->winId(), winId2); QCOMPARE(w3->winId(), winId3); w1->setParent(parent); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w1->winId() != winId1); winId1 = w1->winId(); QCOMPARE(w2->winId(), winId2); QCOMPARE(w3->winId(), winId3); w2->setParent(0); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w2->winId() != winId2); winId2 = w2->winId(); QCOMPARE(w3->winId(), winId3); w2->setParent(parent); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w2->winId() != winId2); winId2 = w2->winId(); QCOMPARE(w3->winId(), winId3); w2->setParent(w1); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w2->winId() != winId2); winId2 = w2->winId(); QCOMPARE(w3->winId(), winId3); w3->setParent(0); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w3->winId() != winId3); winId3 = w3->winId(); w3->setParent(w1); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w3->winId() != winId3); winId3 = w3->winId(); w3->setParent(w2); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(w3->winId() != winId3); winId3 = w3->winId(); @@ -3894,7 +3952,16 @@ void tst_QWidget::showHideEvent() if (create && !widget.testAttribute(Qt::WA_WState_Created)) widget.create(); + if (m_platform == QStringLiteral("windows") || m_platform == QStringLiteral("xcb")) { + QEXPECT_FAIL("window: only show", "QTBUG-26424", Continue); + QEXPECT_FAIL("window: show/hide", "QTBUG-26424", Continue); + QEXPECT_FAIL("window: show/hide/create", "QTBUG-26424", Continue); + } QCOMPARE(widget.numberOfShowEvents, expectedShowEvents); + if (m_platform == QStringLiteral("windows") || m_platform == QStringLiteral("xcb")) { + QEXPECT_FAIL("window: show/hide", "QTBUG-26424", Continue); + QEXPECT_FAIL("window: show/hide/create", "QTBUG-26424", Continue); + } QCOMPARE(widget.numberOfHideEvents, expectedHideEvents); } @@ -3914,6 +3981,8 @@ void tst_QWidget::update() #ifdef Q_OS_MAC QEXPECT_FAIL(0, "Cocoa compositor says to paint this twice.", Continue); #endif + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QTRY_COMPARE(w.numPaintEvents, 1); QCOMPARE(w.visibleRegion(), QRegion(w.rect())); @@ -4330,6 +4399,10 @@ void tst_QWidget::setWindowGeometry() widget.show(); QTest::qWaitForWindowShown(&widget); QTest::qWait(20); + if (m_platform == QStringLiteral("windows")) { + QEXPECT_FAIL("130,100 0x200, flags 0", "QTBUG-26424", Continue); + QEXPECT_FAIL("130,50 0x0, flags 0", "QTBUG-26424", Continue); + } QTRY_COMPARE(widget.geometry(), rect); // setGeometry() while shown @@ -4434,6 +4507,7 @@ void tst_QWidget::setGeometry_win() RECT rt; ::GetWindowRect(winHandleOf(&widget), &rt); QVERIFY(rt.left <= 0); + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(rt.top <= 0); } #endif // defined (Q_OS_WIN) && !defined(Q_OS_WINCE) @@ -4490,6 +4564,10 @@ void tst_QWidget::windowMoveResize() QTest::qWait(10); QTRY_COMPARE(widget.pos(), rect.topLeft()); + if (m_platform == QStringLiteral("windows")) { + QEXPECT_FAIL("130,100 0x200, flags 0", "QTBUG-26424", Continue); + QEXPECT_FAIL("130,50 0x0, flags 0", "QTBUG-26424", Continue); + } QTRY_COMPARE(widget.size(), rect.size()); // move() while shown @@ -4681,6 +4759,9 @@ public: void tst_QWidget::popupEnterLeave() { + if (m_platform == QStringLiteral("windows")) + QSKIP("QTBUG-26424"); + QWidget parent; parent.setWindowFlags(Qt::FramelessWindowHint); parent.setGeometry(10, 10, 200, 100); @@ -4786,6 +4867,9 @@ void tst_QWidget::moveChild() void tst_QWidget::showAndMoveChild() { + if (m_platform == QStringLiteral("windows")) + QSKIP("QTBUG-26424"); + QWidget parent(0, Qt::FramelessWindowHint); // prevent custom styles parent.setStyle(new QWindowsStyle); @@ -5309,6 +5393,8 @@ void tst_QWidget::setToolTip() QTest::mouseMove(frame); QTest::qWait(900); // delay is 700 + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); QCOMPARE(spy1.count(), 1); QCOMPARE(spy2.count(), 0); if (pass == 0) @@ -5610,6 +5696,8 @@ void tst_QWidget::childEvents() #endif expected << qMakePair(&widget, QEvent::UpdateRequest); + if (m_platform == QStringLiteral("windows") || m_platform == QStringLiteral("xcb")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QCOMPARE(spy.eventList(), expected); } @@ -5694,6 +5782,8 @@ void tst_QWidget::childEvents() #endif expected << qMakePair(&widget, QEvent::UpdateRequest); + if (m_platform == QStringLiteral("windows") || m_platform == QStringLiteral("xcb")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QCOMPARE(spy.eventList(), expected); } @@ -5780,6 +5870,8 @@ void tst_QWidget::childEvents() #endif expected << qMakePair(&widget, QEvent::UpdateRequest); + if (m_platform == QStringLiteral("windows") || m_platform == QStringLiteral("xcb")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QCOMPARE(spy.eventList(), expected); } } @@ -5929,6 +6021,9 @@ static void workaroundPaletteIssue(QWidget *widget) //#define RENDER_DEBUG void tst_QWidget::renderInvisible() { + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); + QCalendarWidget *calendar = new QCalendarWidget; // disable anti-aliasing to eliminate potential differences when subpixel antialiasing // is enabled on the screen @@ -6775,6 +6870,9 @@ void tst_QWidget::moveWindowInShowEvent_data() void tst_QWidget::moveWindowInShowEvent() { + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); + QFETCH(QPoint, initial); QFETCH(QPoint, position); @@ -6903,11 +7001,15 @@ void tst_QWidget::updateWhileMinimized() // Make sure update requests are discarded until the widget is shown again. widget.update(0, 0, 50, 50); QTest::qWait(10); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QCOMPARE(widget.numPaintEvents, 0); // Restore window. widget.showNormal(); QTest::qWait(30); + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); QTRY_COMPARE(widget.numPaintEvents, 1); QCOMPARE(widget.paintedRegion, QRegion(0, 0, 50, 50)); } @@ -6971,6 +7073,8 @@ void tst_QWidget::alienWidgets() child.setAttribute(Qt::WA_NativeWindow); child.setAttribute(Qt::WA_DontCreateNativeAncestors); window.show(); + if (m_platform == QStringLiteral("xcb")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(child.testAttribute(Qt::WA_Mapped)); widget.hide(); QVERIFY(!child.testAttribute(Qt::WA_Mapped)); @@ -6991,9 +7095,17 @@ void tst_QWidget::alienWidgets() QVERIFY(!paintOnScreenChild.internalWinId()); paintOnScreen.setAttribute(Qt::WA_PaintOnScreen); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(paintOnScreen.testAttribute(Qt::WA_NativeWindow)); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(paintOnScreen.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(paintOnScreenChild.testAttribute(Qt::WA_NativeWindow)); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(paintOnScreenChild.internalWinId()); // Check that widgets with the Qt::MSWindowsOwnDC attribute set @@ -7036,8 +7148,14 @@ void tst_QWidget::alienWidgets() QVERIFY(!greatGrandChild.internalWinId()); topLevel.show(); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(child.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(grandChild.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(greatGrandChild.internalWinId()); } @@ -7060,8 +7178,14 @@ void tst_QWidget::alienWidgets() topLevel.show(); QVERIFY(topLevel.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(widget->testAttribute(Qt::WA_NativeWindow)); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(child->internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(child->testAttribute(Qt::WA_NativeWindow)); QVERIFY(!child->testAttribute(Qt::WA_PaintOnScreen)); QVERIFY(!dummy->internalWinId()); @@ -7089,11 +7213,23 @@ void tst_QWidget::alienWidgets() window.show(); QVERIFY(window.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(child.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(child.testAttribute(Qt::WA_NativeWindow)); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(grandChild.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(grandChild.testAttribute(Qt::WA_NativeWindow)); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(paintOnScreenWidget.internalWinId()); + if (m_platform == QStringLiteral("xcb") || m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QVERIFY(paintOnScreenWidget.testAttribute(Qt::WA_NativeWindow)); } @@ -7385,6 +7521,8 @@ void tst_QWidget::doubleRepaint() widget.show(); QTest::qWaitForWindowShown(&widget); QTest::qWait(10); + if (m_platform == QStringLiteral("windows")) + QEXPECT_FAIL("", "QTBUG-26424", Continue); QTRY_COMPARE(widget.numPaintEvents, expectedRepaints); widget.numPaintEvents = 0; @@ -7572,6 +7710,8 @@ void tst_QWidget::moveInResizeEvent() void tst_QWidget::immediateRepaintAfterShow() { + if (m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); if (m_platform != QStringLiteral("xcb") && m_platform != QStringLiteral("windows")) QSKIP("We don't support immediate repaint right after show on other platforms."); @@ -8406,6 +8546,8 @@ void tst_QWidget::syntheticEnterLeave() #if !defined(Q_OS_WINCE_WM) void tst_QWidget::taskQTBUG_4055_sendSyntheticEnterLeave() { + if (m_platform == QStringLiteral("windows") || m_platform == QStringLiteral("xcb")) + QSKIP("QTBUG-26424"); class SELParent : public QWidget { public: