[kwin_wayland] Test that Seat gets destroyed when Display terminates

This commit is contained in:
Martin Gräßlin 2014-09-03 20:02:42 +02:00
parent d080ce7356
commit 1574c47d27

View file

@ -34,6 +34,7 @@ private Q_SLOTS:
void testName(); void testName();
void testPointerButton(); void testPointerButton();
void testPointerPos(); void testPointerPos();
void testDestroyThroughTerminate();
}; };
static const QString s_socketName = QStringLiteral("kwin-wayland-server-seat-test-0"); static const QString s_socketName = QStringLiteral("kwin-wayland-server-seat-test-0");
@ -157,5 +158,17 @@ void TestWaylandServerSeat::testPointerPos()
QCOMPARE(posSpy.count(), 1); QCOMPARE(posSpy.count(), 1);
} }
void TestWaylandServerSeat::testDestroyThroughTerminate()
{
Display display;
display.setSocketName(s_socketName);
display.start();
SeatInterface *seat = display.createSeat();
QSignalSpy destroyedSpy(seat, SIGNAL(destroyed(QObject*)));
QVERIFY(destroyedSpy.isValid());
display.terminate();
QVERIFY(!destroyedSpy.isEmpty());
}
QTEST_MAIN(TestWaylandServerSeat) QTEST_MAIN(TestWaylandServerSeat)
#include "test_seat.moc" #include "test_seat.moc"