diff --git a/src/wayland/autotests/server/test_display.cpp b/src/wayland/autotests/server/test_display.cpp index aa44b7775e..1b115de8c2 100644 --- a/src/wayland/autotests/server/test_display.cpp +++ b/src/wayland/autotests/server/test_display.cpp @@ -126,6 +126,7 @@ void TestWaylandServerDisplay::testClientConnection() QVERIFY(client); QVERIFY(connectedSpy.isEmpty()); + QVERIFY(display.connections().isEmpty()); ClientConnection *connection = display.getConnection(client); QVERIFY(connection); QCOMPARE(connection->client(), client); @@ -138,6 +139,8 @@ void TestWaylandServerDisplay::testClientConnection() QCOMPARE((wl_client*)constRef, client); QCOMPARE(connectedSpy.count(), 1); QCOMPARE(connectedSpy.first().first().value(), connection); + QCOMPARE(display.connections().count(), 1); + QCOMPARE(display.connections().first(), connection); QCOMPARE(connection, display.getConnection(client)); QCOMPARE(connectedSpy.count(), 1); @@ -153,6 +156,9 @@ void TestWaylandServerDisplay::testClientConnection() QCOMPARE(connectedSpy.count(), 2); QCOMPARE(connectedSpy.first().first().value(), connection); QCOMPARE(connectedSpy.last().first().value(), connection2); + QCOMPARE(display.connections().count(), 2); + QCOMPARE(display.connections().first(), connection); + QCOMPARE(display.connections().last(), connection2); // and destroy QVERIFY(disconnectedSpy.isEmpty()); @@ -164,6 +170,7 @@ void TestWaylandServerDisplay::testClientConnection() close(sv[1]); close(sv2[0]); close(sv2[1]); + QVERIFY(display.connections().isEmpty()); } QTEST_GUILESS_MAIN(TestWaylandServerDisplay) diff --git a/src/wayland/display.cpp b/src/wayland/display.cpp index 25df978405..73c46051d6 100644 --- a/src/wayland/display.cpp +++ b/src/wayland/display.cpp @@ -274,5 +274,10 @@ ClientConnection *Display::getConnection(wl_client *client) return c; } +QVector< ClientConnection* > Display::connections() const +{ + return d->clients; +} + } } diff --git a/src/wayland/display.h b/src/wayland/display.h index 88d4f43c81..d068dae695 100644 --- a/src/wayland/display.h +++ b/src/wayland/display.h @@ -99,6 +99,7 @@ public: * @return The ClientConnection for the given native client **/ ClientConnection *getConnection(wl_client *client); + QVector connections() const; Q_SIGNALS: void socketNameChanged(const QString&);