From 3041ac29ecaf9d72393b9dc1b28faa44201cf44b Mon Sep 17 00:00:00 2001 From: Linus Jahn Date: Fri, 23 Jul 2021 21:01:15 +0200 Subject: tests: util: Add new packetToXml() function --- tests/util.h | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'tests') diff --git a/tests/util.h b/tests/util.h index 035c8293..49f8e4d3 100644 --- a/tests/util.h +++ b/tests/util.h @@ -46,6 +46,16 @@ inline QDomElement xmlToDom(const String &xml) return doc.documentElement(); } +template +static QByteArray packetToXml(const T &packet) +{ + QBuffer buffer; + buffer.open(QIODevice::ReadWrite); + QXmlStreamWriter writer(&buffer); + packet.toXml(&writer); + return buffer.data(); +} + template static void parsePacket(T &packet, const QByteArray &xml) { @@ -56,13 +66,10 @@ static void parsePacket(T &packet, const QByteArray &xml) template static void serializePacket(T &packet, const QByteArray &xml) { - QBuffer buffer; - buffer.open(QIODevice::ReadWrite); - QXmlStreamWriter writer(&buffer); - packet.toXml(&writer); + const auto data = packetToXml(packet); qDebug() << "expect " << xml; - qDebug() << "writing" << buffer.data(); - QCOMPARE(buffer.data(), xml); + qDebug() << "writing" << data; + QCOMPARE(data, xml); } template -- cgit v1.2.3