diff options
author | Stephen Kelly <stephen.kelly@kdab.com> | 2012-02-11 01:10:07 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-02-15 20:47:32 +0100 |
commit | 394315d902d9068a53439737906c00d48023d182 (patch) | |
tree | 7d5d09f1b4386fefdbe702a33ab8e30e08739758 /tests/auto/widgets/kernel | |
parent | c455674555b263c98fe613612babab3efcf10345 (diff) |
Move the removal of the Quit event to QWindow.
Change-Id: If524127ba9dab9ef065aaf4079294295eef8e49b
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Diffstat (limited to 'tests/auto/widgets/kernel')
-rw-r--r-- | tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp index 7017c6157e..c600956912 100644 --- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp +++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp @@ -149,6 +149,8 @@ private slots: void testQuitLock8(); void globalStaticObjectDestruction(); // run this last + + void abortQuitOnShow(); }; class EventSpy : public QObject @@ -2560,6 +2562,44 @@ void tst_QApplication::testQuitLock8() // No hang = pass } +class ShowCloseShowWidget : public QWidget +{ + Q_OBJECT +public: + ShowCloseShowWidget(bool showAgain, QWidget *parent = 0) + : QWidget(parent), showAgain(showAgain) + { + QTimer::singleShot(0, this, SLOT(doClose())); + QTimer::singleShot(500, this, SLOT(exitApp())); + } + +private slots: + void doClose() { + close(); + if (showAgain) + show(); + } + + void exitApp() { + qApp->exit(1); + } + +private: + bool showAgain; +}; + +void tst_QApplication::abortQuitOnShow() +{ + int argc = 0; + QApplication app(argc, 0); + QWidget *window1 = new ShowCloseShowWidget(false); + window1->show(); + QCOMPARE(app.exec(), 0); + + QWidget *window2 = new ShowCloseShowWidget(true); + window2->show(); + QCOMPARE(app.exec(), 1); +} /* This test is meant to ensure that certain objects (public & commonly used) |