/* SPDX-FileCopyrightText: 2016 Martin Gräßlin SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL */ // Qt #include #include // WaylandServer #include "wayland/display.h" using namespace KWin; 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"); KWin::Display display; QSignalSpy runningSpy(&display, &KWin::Display::runningChanged); QVERIFY(!display.addSocketName(testSocketName)); display.start(); // call into dispatchEvents should not crash display.dispatchEvents(); } QTEST_GUILESS_MAIN(NoXdgRuntimeDirTest) #include "test_no_xdg_runtime_dir.moc"