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
|
2023-07-03 19:28:19 +00:00
|
|
|
#include <QSignalSpy>
|
|
|
|
#include <QTest>
|
2016-07-04 06:48:43 +00:00
|
|
|
// WaylandServer
|
2022-04-22 09:27:33 +00:00
|
|
|
#include "wayland/display.h"
|
2016-07-04 06:48:43 +00:00
|
|
|
|
2023-09-13 17:59:29 +00:00
|
|
|
using namespace KWin;
|
2016-07-04 06:48:43 +00:00
|
|
|
|
|
|
|
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");
|
2023-09-13 17:59:29 +00:00
|
|
|
KWin::Display display;
|
|
|
|
QSignalSpy runningSpy(&display, &KWin::Display::runningChanged);
|
2020-10-19 15:52:56 +00:00
|
|
|
QVERIFY(!display.addSocketName(testSocketName));
|
2016-07-04 06:48:43 +00:00
|
|
|
display.start();
|
|
|
|
|
|
|
|
// call into dispatchEvents should not crash
|
|
|
|
display.dispatchEvents();
|
|
|
|
}
|
|
|
|
|
|
|
|
QTEST_GUILESS_MAIN(NoXdgRuntimeDirTest)
|
|
|
|
#include "test_no_xdg_runtime_dir.moc"
|