summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp
diff options
context:
space:
mode:
authorJason McDonald <jason.mcdonald@nokia.com>2011-11-15 11:36:18 +1000
committerQt by Nokia <qt-info@nokia.com>2011-11-18 01:51:57 +0100
commita8fd0c3654f8352773638633778cd8003680cbc7 (patch)
tree4815cca9daf879b96a92a3de95621b56ac5ba868 /tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp
parentd90d57bb8b995c7a66e7f9b7b2515447fbe11de0 (diff)
Don't depend on moc to disable test functions.
The moc tool is not aware of all defines (particularly those that are compiler builtins) and does not correctly evaluate others that depend on compiler builtins, such as Q_OS_FOO. This commit reverts parts of the following commits, but is not a complete fix as there were many instances of this problem in the tests prior to those commits: 924d810dbdcd5b5b0fa860922b2487ea9062d002 8aaff6751038b88d17e23be6fcee945771297c5b 338d3f11973412047c2c9cd41cbd0c961d738ef3 a55034062ba2bf73a9f1ed3d9cf31745b38149e3 253497b7446c7d723aa3bdd7152e25d6852f2604 7cfad460c56319ba89c4a3a0bbcb2e54ab1cdbc6 9d2ff58f3642828e494e7e9b2df7dbb8e2cd408f 0cf6baa2d61ebaad2a2a0530c37f27e719b68f4b Change-Id: I947d797fe3ec76139ba1b55561cea569895662c5 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Diffstat (limited to 'tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp')
-rw-r--r--tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp34
1 files changed, 18 insertions, 16 deletions
diff --git a/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp b/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp
index 80eb717790..4ac9a6bf5a 100644
--- a/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp
+++ b/tests/auto/widgets/dialogs/qdialog/tst_qdialog.cpp
@@ -75,17 +75,11 @@ private slots:
void showMaximized();
void showMinimized();
void showFullScreen();
-#if !defined(Q_OS_UNIX) && !defined(Q_OS_WINCE)
void showAsTool();
-#endif
-#ifndef Q_OS_WINCE
void toolDialogPosition();
-#endif
void deleteMainDefault();
void deleteInExec();
-#if !defined(QT_NO_EXCEPTIONS) && !defined(Q_OS_MAC) && !(defined(Q_OS_WINCE) && defined(_ARM_))
void throwInExec();
-#endif
void showSizeGrip();
void setVisible();
void reject();
@@ -372,11 +366,13 @@ void tst_QDialog::showFullScreen()
QVERIFY(!dialog.isVisible());
}
-// Qt/X11: Skipped since activeWindow() is not respected by all window managers.
-// Qt/WinCE: No real support for Qt::Tool on WinCE.
-#if !defined(Q_OS_UNIX) && !defined(Q_OS_WINCE)
void tst_QDialog::showAsTool()
{
+#if defined(Q_OS_UNIX)
+ QSKIP("Qt/X11: Skipped since activeWindow() is not respected by all window managers");
+#elif defined(Q_OS_WINCE)
+ QSKIP("No real support for Qt::Tool on WinCE");
+#endif
ToolDialog dialog(testWidget);
testWidget->activateWindow();
dialog.exec();
@@ -387,14 +383,14 @@ void tst_QDialog::showAsTool()
QCOMPARE(dialog.wasActive(), false);
}
}
-#endif
// Verify that pos() returns the same before and after show()
// for a dialog with the Tool window type.
-// No real support for Qt::Tool on WinCE, so skip this test.
-#ifndef Q_OS_WINCE
void tst_QDialog::toolDialogPosition()
{
+#if defined(Q_OS_WINCE)
+ QSKIP("No real support for Qt::Tool on WinCE");
+#endif
QDialog dialog(0, Qt::Tool);
dialog.move(QPoint(100,100));
const QPoint beforeShowPosition = dialog.pos();
@@ -402,7 +398,6 @@ void tst_QDialog::toolDialogPosition()
const QPoint afterShowPosition = dialog.pos();
QCOMPARE(afterShowPosition, beforeShowPosition);
}
-#endif
class Dialog : public QDialog
{
@@ -430,8 +425,7 @@ void tst_QDialog::deleteInExec()
QCOMPARE(dialog->exec(), int(QDialog::Rejected));
}
-// Throwing exceptions in exec() is not supported on Mac or on WinCE/ARM.
-#if !defined(QT_NO_EXCEPTIONS) && !defined(Q_OS_MAC) && !(defined(Q_OS_WINCE) && defined(_ARM_))
+#ifndef QT_NO_EXCEPTIONS
class QDialogTestException : public std::exception { };
class ExceptionDialog : public QDialog
@@ -449,6 +443,9 @@ public slots:
void tst_QDialog::throwInExec()
{
+#if defined(Q_WS_MAC) || (defined(Q_WS_WINCE) && defined(_ARM_))
+ QSKIP("Throwing exceptions in exec() is not supported on this platform.");
+#endif
#if defined(Q_OS_LINUX)
// C++ exceptions can't be passed through glib callbacks. Skip the test if
// we're using the glib event loop.
@@ -474,7 +471,12 @@ void tst_QDialog::throwInExec()
}
QCOMPARE(caughtExceptions, 1);
}
-#endif
+#else
+void tst_QDialog::throwInExec()
+{
+ QSKIP("Exceptions are disabled");
+}
+#endif //QT_NO_EXCEPTIONS
// From Task 124269
void tst_QDialog::showSizeGrip()