diff options
| author | Linus Jahn <lnj@kaidan.im> | 2021-07-23 21:01:15 +0200 |
|---|---|---|
| committer | Linus Jahn <lnj@kaidan.im> | 2021-08-01 17:31:16 +0200 |
| commit | 3041ac29ecaf9d72393b9dc1b28faa44201cf44b (patch) | |
| tree | 9062f411cf3f8f7e78526e468b666eb68e0b52eb | |
| parent | 6b9e2c85f144a44a2b5b664ee6772ec09e1ccc60 (diff) | |
| download | qxmpp-3041ac29ecaf9d72393b9dc1b28faa44201cf44b.tar.gz | |
tests: util: Add new packetToXml() function
| -rw-r--r-- | tests/util.h | 19 |
1 files changed, 13 insertions, 6 deletions
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<typename T> +static QByteArray packetToXml(const T &packet) +{ + QBuffer buffer; + buffer.open(QIODevice::ReadWrite); + QXmlStreamWriter writer(&buffer); + packet.toXml(&writer); + return buffer.data(); +} + template<class T> static void parsePacket(T &packet, const QByteArray &xml) { @@ -56,13 +66,10 @@ static void parsePacket(T &packet, const QByteArray &xml) template<class T> 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<class T> |
