Advance Wayland and KDE package bring-up

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
2026-04-14 10:51:06 +01:00
parent 51f3c21121
commit cf12defd28
15214 changed files with 20594243 additions and 269 deletions
@@ -0,0 +1,55 @@
// SPDX-License-Identifier: LGPL-2.0-or-later
// SPDX-FileCopyrightText: 2024 Harald Sitter <sitter@kde.org>
#include <cstdlib>
#include <QSignalSpy>
#include <QTest>
#include <connectionbackend_p.h>
class ConnectionBackendTest : public QObject
{
Q_OBJECT
private Q_SLOTS:
void testJumboPackets()
{
QSKIP("TODO testJumboPackets doesn't pass FIXME");
KIO::ConnectionBackend server;
KIO::ConnectionBackend clientConnection;
QVERIFY(server.listenForRemote().success);
auto spy = std::make_unique<QSignalSpy>(&server, &KIO::ConnectionBackend::newConnection);
QVERIFY(clientConnection.connectToRemote(server.address));
spy->wait();
QVERIFY(!spy->isEmpty());
auto serverConnection = std::unique_ptr<KIO::ConnectionBackend>(server.nextPendingConnection());
QVERIFY(serverConnection);
spy = std::make_unique<QSignalSpy>(&clientConnection, &KIO::ConnectionBackend::commandReceived);
constexpr auto cmd = 64; // completely arbitrary value we don't actually care about the command in this test
const auto data = randomByteArray(clientConnection.StandardBufferSize * 4L);
serverConnection->sendCommand(cmd, data);
spy->wait();
QVERIFY(!spy->isEmpty());
auto task = spy->at(0).at(0).value<KIO::Task>();
QCOMPARE(task.data.size(), data.size());
}
private:
QByteArray randomByteArray(qsizetype size)
{
QByteArray data;
data.reserve(size);
for (int i = 0; i < size; i++) {
data.append(std::rand() % std::max(1, std::numeric_limits<char>::digits10));
}
return data;
}
};
QTEST_MAIN(ConnectionBackendTest)
#include "connectionbackendtest.moc"