summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorBradley T. Hughes <bradley.hughes@nokia.com>2012-04-04 12:11:40 +0200
committerQt by Nokia <qt-info@nokia.com>2012-04-04 14:04:03 +0200
commit779c7c327915b38eeac38486c8d9e7894fd3aed2 (patch)
tree4f41491a4f85c694d7e4565a2354834bdb71de60 /tests/auto
parentacd79f7d6463b31507839fb63d7664df43443b93 (diff)
Add tst_QWindow::windowModality()
This tests that we get the windowModalityChanged() signal as needed, but not unnecessarily either. Change-Id: I2232fa9d45c72e472b324b681859b4b0d574b467 Reviewed-by: João Abecasis <joao.abecasis@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/gui/kernel/qwindow/tst_qwindow.cpp32
1 files changed, 32 insertions, 0 deletions
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>("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 <tst_qwindow.moc>
QTEST_MAIN(tst_QWindow)