tests/auto/qdesktopwidget/tst_qdesktopwidget.cpp
branchRCL_3
changeset 4 3b1da2848fc7
parent 0 1918ee327afb
--- a/tests/auto/qdesktopwidget/tst_qdesktopwidget.cpp	Tue Feb 02 00:43:10 2010 +0200
+++ b/tests/auto/qdesktopwidget/tst_qdesktopwidget.cpp	Fri Feb 19 23:40:16 2010 +0200
@@ -1,6 +1,6 @@
 /****************************************************************************
 **
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
 ** All rights reserved.
 ** Contact: Nokia Corporation (qt-info@nokia.com)
 **
@@ -64,6 +64,7 @@
     void screenNumberForQWidget();
     void screenNumberForQPoint();
     void availableGeometry();
+    void screenGeometry();
 };
 
 tst_QDesktopWidget::tst_QDesktopWidget()
@@ -98,6 +99,9 @@
 void tst_QDesktopWidget::availableGeometry()
 {
     QDesktopWidget desktop;
+    QTest::ignoreMessage(QtWarningMsg, "QDesktopWidget::availableGeometry(): Attempt "
+                                       "to get the available geometry of a null widget");
+    desktop.availableGeometry((QWidget *)0);
 
     QRect total;
     QRect available;
@@ -158,6 +162,27 @@
     QVERIFY(screen >= 0 && screen < desktopWidget->numScreens());
 }
 
+void tst_QDesktopWidget::screenGeometry()
+{
+    QDesktopWidget *desktopWidget = QApplication::desktop();
+    QTest::ignoreMessage(QtWarningMsg, "QDesktopWidget::screenGeometry(): Attempt "
+                                       "to get the screen geometry of a null widget");
+    QRect r = desktopWidget->screenGeometry((QWidget *)0);
+    QVERIFY(r.isNull());
+    QWidget widget;
+    widget.show();
+    QTest::qWaitForWindowShown(&widget);
+    r = desktopWidget->screenGeometry(&widget);
+
+    QRect total;
+    QRect available;
+    for (int i = 0; i < desktopWidget->screenCount(); ++i) {
+        total = desktopWidget->screenGeometry(i);
+        available = desktopWidget->availableGeometry(i);
+    }
+    QVERIFY(total.contains(r));
+}
+
 QTEST_MAIN(tst_QDesktopWidget)
 #include "tst_qdesktopwidget.moc"