From 779c7c327915b38eeac38486c8d9e7894fd3aed2 Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 4 Apr 2012 12:11:40 +0200 Subject: Add tst_QWindow::windowModality() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This tests that we get the windowModalityChanged() signal as needed, but not unnecessarily either. Change-Id: I2232fa9d45c72e472b324b681859b4b0d574b467 Reviewed-by: João Abecasis Reviewed-by: Robin Burchell --- tests/auto/gui/kernel/qwindow/tst_qwindow.cpp | 32 +++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'tests/auto') diff --git a/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp b/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp index dc17ec653c..a75e1cb054 100644 --- a/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp +++ b/tests/auto/gui/kernel/qwindow/tst_qwindow.cpp @@ -67,6 +67,7 @@ private slots: void close(); void activateAndClose(); void mouseEventSequence(); + void windowModality(); void initTestCase() { @@ -758,5 +759,36 @@ void tst_QWindow::mouseEventSequence() QCOMPARE(window.mouseSequenceSignature, QLatin1String("prprprpr")); } +void tst_QWindow::windowModality() +{ + qRegisterMetaType("Qt::WindowModality"); + + QWindow window; + QSignalSpy spy(&window, SIGNAL(windowModalityChanged(Qt::WindowModality))); + + QCOMPARE(window.windowModality(), Qt::NonModal); + window.setWindowModality(Qt::NonModal); + QCOMPARE(window.windowModality(), Qt::NonModal); + QCOMPARE(spy.count(), 0); + + window.setWindowModality(Qt::WindowModal); + QCOMPARE(window.windowModality(), Qt::WindowModal); + QCOMPARE(spy.count(), 1); + window.setWindowModality(Qt::WindowModal); + QCOMPARE(window.windowModality(), Qt::WindowModal); + QCOMPARE(spy.count(), 1); + + window.setWindowModality(Qt::ApplicationModal); + QCOMPARE(window.windowModality(), Qt::ApplicationModal); + QCOMPARE(spy.count(), 2); + window.setWindowModality(Qt::ApplicationModal); + QCOMPARE(window.windowModality(), Qt::ApplicationModal); + QCOMPARE(spy.count(), 2); + + window.setWindowModality(Qt::NonModal); + QCOMPARE(window.windowModality(), Qt::NonModal); + QCOMPARE(spy.count(), 3); +} + #include QTEST_MAIN(tst_QWindow) -- cgit v1.2.3