2020-03-15 15:19:28 +00:00
|
|
|
/*
|
|
|
|
SPDX-FileCopyrightText: 2016 Martin Gräßlin <mgraesslin@kde.org>
|
2016-07-04 06:48:43 +00:00
|
|
|
|
2020-03-15 15:19:28 +00:00
|
|
|
SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
|
|
|
|
*/
|
2016-07-04 06:48:43 +00:00
|
|
|
// Qt
|
2018-11-06 06:22:36 +00:00
|
|
|
#include <QtTest>
|
2016-07-04 06:48:43 +00:00
|
|
|
// WaylandServer
|
|
|
|
#include "../../src/server/display.h"
|
|
|
|
|
|
|
|
using namespace KWayland::Server;
|
|
|
|
|
|
|
|
class NoXdgRuntimeDirTest : public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
private Q_SLOTS:
|
|
|
|
void initTestCase();
|
|
|
|
void testCreate();
|
|
|
|
};
|
|
|
|
|
|
|
|
void NoXdgRuntimeDirTest::initTestCase()
|
|
|
|
{
|
|
|
|
qunsetenv("XDG_RUNTIME_DIR");
|
|
|
|
}
|
|
|
|
|
|
|
|
void NoXdgRuntimeDirTest::testCreate()
|
|
|
|
{
|
|
|
|
// this test verifies that not having an XDG_RUNTIME_DIR is handled gracefully
|
|
|
|
// the server cannot start, but should not crash
|
|
|
|
const QString testSocketName = QStringLiteral("kwayland-test-no-xdg-runtime-dir-0");
|
|
|
|
Display display;
|
|
|
|
QSignalSpy runningSpy(&display, &Display::runningChanged);
|
|
|
|
QVERIFY(runningSpy.isValid());
|
|
|
|
display.setSocketName(testSocketName);
|
|
|
|
QVERIFY(!display.isRunning());
|
|
|
|
display.start();
|
|
|
|
QVERIFY(!display.isRunning());
|
|
|
|
|
|
|
|
// call into dispatchEvents should not crash
|
|
|
|
display.dispatchEvents();
|
|
|
|
}
|
|
|
|
|
|
|
|
QTEST_GUILESS_MAIN(NoXdgRuntimeDirTest)
|
|
|
|
#include "test_no_xdg_runtime_dir.moc"
|