Skip to content
This repository was archived by the owner on Mar 20, 2025. It is now read-only.

Commit 3e99aba

Browse files
committed
Add test for sticker pack message extension
1 parent 5270ae0 commit 3e99aba

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

src/base/QXmppMessage.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -1843,6 +1843,7 @@ void QXmppMessage::serializeExtensions(QXmlStreamWriter *writer, QXmpp::SceMode
18431843
writer->writeStartElement("sticker");
18441844
writer->writeDefaultNamespace(ns_stickers);
18451845
writer->writeAttribute("pack", *d->stickerPackId);
1846+
writer->writeEndElement();
18461847
}
18471848
}
18481849
}

tests/qxmppmessage/tst_qxmppmessage.cpp

+27
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ private slots:
5656
void testE2eeFallbackBody();
5757
void testFileSharing();
5858
void testEncryptedFileSource();
59+
void testStickers();
5960
};
6061

6162
void tst_QXmppMessage::testBasic_data()
@@ -1259,5 +1260,31 @@ void tst_QXmppMessage::testEncryptedFileSource()
12591260
}
12601261
}
12611262

1263+
void tst_QXmppMessage::testStickers()
1264+
{
1265+
QByteArray xml(
1266+
"<message id='sharing-a-file' to='[email protected]' from='[email protected]/pda' type='normal'>"
1267+
"<body>😘</body>"
1268+
"<file-sharing xmlns='urn:xmpp:sfs:0' disposition='inline'>"
1269+
"<file xmlns='urn:xmpp:file:metadata:0'>"
1270+
"<desc>😘</desc>"
1271+
"<hash xmlns='urn:xmpp:hashes:2' algo='sha-256'>gw+6xdCgOcvCYSKuQNrXH33lV9NMzuDf/s0huByCDsY=</hash>"
1272+
"<media-type>image/png</media-type>"
1273+
"<size>67016</size>"
1274+
"</file>"
1275+
"<sources>"
1276+
"<url-data xmlns='http://jabber.org/protocol/url-data' target='https://download.montague.lit/51078299-d071-46e1-b6d3-3de4a8ab67d6/sticker_marsey_kiss.png'/>"
1277+
"</sources>"
1278+
"</file-sharing>"
1279+
"<sticker xmlns='urn:xmpp:stickers:0' pack='EpRv28DHHzFrE4zd+xaNpVb4'/>"
1280+
"</message>");
1281+
1282+
QXmppMessage message1;
1283+
parsePacket(message1, xml);
1284+
QVERIFY(!message1.sharedFiles().empty());
1285+
QVERIFY(message1.stickerPackId().has_value());
1286+
serializePacket(message1, xml);
1287+
}
1288+
12621289
QTEST_MAIN(tst_QXmppMessage)
12631290
#include "tst_qxmppmessage.moc"

0 commit comments

Comments
 (0)