summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui
diff options
context:
space:
mode:
authorPasi Petäjäjärvi <pasi.petajajarvi@theqtcompany.com>2015-09-09 15:45:18 +0300
committerPasi Petäjäjärvi <pasi.petajajarvi@theqtcompany.com>2015-09-10 06:29:11 +0000
commit4b2db07b42dc0be28beafbd20d005cc0b7b11fc5 (patch)
treec94102ad6342589f997cdbeecdf42b11308d5886 /tests/auto/gui
parentc258422cf9962b994505030b7cc9bb00d22b7bf8 (diff)
Fix tst_QGuiApplication for embedded platforms using eglfs QPA
Disable input and cursor for QGuiApplication instances used in autotest to initialize it properly. Change-Id: I78dc9b776269c082c20f244a51f858289129275d Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Diffstat (limited to 'tests/auto/gui')
-rw-r--r--tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp b/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp
index 19365bffdd..d573d97495 100644
--- a/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp
+++ b/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp
@@ -60,6 +60,7 @@ class tst_QGuiApplication: public tst_QCoreApplication
Q_OBJECT
private slots:
+ void initTestCase();
void cleanup();
void displayName();
void firstWindowTitle();
@@ -84,6 +85,21 @@ private slots:
void settableStyleHints(); // Needs to run last as it changes style hints.
};
+void tst_QGuiApplication::initTestCase()
+{
+#ifdef QT_QPA_DEFAULT_PLATFORM_NAME
+ if ((QString::compare(QStringLiteral(QT_QPA_DEFAULT_PLATFORM_NAME),
+ QStringLiteral("eglfs"), Qt::CaseInsensitive) == 0) ||
+ (QString::compare(QString::fromLatin1(qgetenv("QT_QPA_PLATFORM")),
+ QStringLiteral("eglfs"), Qt::CaseInsensitive) == 0)) {
+ // Set env variables to disable input and cursor because eglfs is single fullscreen window
+ // and trying to initialize input and cursor will crash test.
+ qputenv("QT_QPA_EGLFS_DISABLE_INPUT", "1");
+ qputenv("QT_QPA_EGLFS_HIDECURSOR", "1");
+ }
+#endif
+}
+
void tst_QGuiApplication::cleanup()
{
QVERIFY(QGuiApplication::allWindows().isEmpty());