summaryrefslogtreecommitdiff
path: root/platform/qt/test
diff options
context:
space:
mode:
Diffstat (limited to 'platform/qt/test')
-rw-r--r--platform/qt/test/headless_backend_qt.cpp8
-rw-r--r--platform/qt/test/main.cpp24
-rw-r--r--platform/qt/test/qmapboxgl.cpp10
3 files changed, 27 insertions, 15 deletions
diff --git a/platform/qt/test/headless_backend_qt.cpp b/platform/qt/test/headless_backend_qt.cpp
index 1992cab2fa..00b519d5bf 100644
--- a/platform/qt/test/headless_backend_qt.cpp
+++ b/platform/qt/test/headless_backend_qt.cpp
@@ -1,6 +1,5 @@
#include <mbgl/gl/headless_backend.hpp>
-#include <QApplication>
#include <QGLContext>
#include <QGLWidget>
@@ -40,13 +39,6 @@ bool HeadlessBackend::hasDisplay() {
void HeadlessBackend::createContext() {
assert(!hasContext());
-
- static const char* argv[] = { "mbgl" };
- static int argc = 1;
- static auto* app = new QApplication(argc, const_cast<char**>(argv));
-
- Q_UNUSED(app);
-
impl.reset(new QtImpl);
}
diff --git a/platform/qt/test/main.cpp b/platform/qt/test/main.cpp
new file mode 100644
index 0000000000..d9f7d480e5
--- /dev/null
+++ b/platform/qt/test/main.cpp
@@ -0,0 +1,24 @@
+#include <QApplication>
+
+#include <mbgl/test.hpp>
+#include <unistd.h>
+#include <cstring>
+#include <cerrno>
+#include <cstdio>
+
+#define xstr(s) str(s)
+#define str(s) #s
+
+int main(int argc, char *argv[]) {
+ QApplication app(argc, argv);
+
+#ifdef WORK_DIRECTORY
+ const int result = chdir(xstr(WORK_DIRECTORY));
+ if (result != 0) {
+ fprintf(stderr, "failed to change directory: %s\n", strerror(errno));
+ return errno;
+ }
+#endif
+
+ return mbgl::runTests(argc, argv);
+}
diff --git a/platform/qt/test/qmapboxgl.cpp b/platform/qt/test/qmapboxgl.cpp
index 9406fa2420..8b88a4f6f6 100644
--- a/platform/qt/test/qmapboxgl.cpp
+++ b/platform/qt/test/qmapboxgl.cpp
@@ -10,7 +10,7 @@ class QMapboxGLTest : public QObject, public ::testing::Test {
Q_OBJECT
public:
- QMapboxGLTest() : app(argc, const_cast<char**>(&argv)), map(nullptr, settings) {
+ QMapboxGLTest() : map(nullptr, settings) {
connect(&map, SIGNAL(mapChanged(QMapboxGL::MapChange)),
this, SLOT(onMapChanged(QMapboxGL::MapChange)));
connect(&map, SIGNAL(needsRendering()),
@@ -26,19 +26,15 @@ public:
void runUntil(QMapboxGL::MapChange status) {
changeCallback = [&](QMapboxGL::MapChange change) {
if (change == status) {
- app.exit();
+ qApp->exit();
changeCallback = nullptr;
}
};
- app.exec();
+ qApp->exec();
}
private:
- int argc = 1;
- const char* argv = "mbgl-test";
-
- QApplication app;
QGLWidget widget;
protected: