aboutsummaryrefslogtreecommitdiff
path: root/tests/qxmppmessage/tst_qxmppmessage.cpp
diff options
context:
space:
mode:
authorMelvin Keskin <melvo@olomono.de>2022-10-16 19:59:49 +0200
committerGitHub <noreply@github.com>2022-10-16 19:59:49 +0200
commit66e5f060abe831fa08a758b9de44b29bfec8b3ba (patch)
tree0fab0a2b20d6563c3522172129f0c5520c6028b7 /tests/qxmppmessage/tst_qxmppmessage.cpp
parentecce762e109bc9d88f3f6b7925e8b33ffcc0f57d (diff)
downloadqxmpp-66e5f060abe831fa08a758b9de44b29bfec8b3ba.tar.gz
Implement XEP-0444: Message Reactions (#492)
https://xmpp.org/extensions/xep-0444.html
Diffstat (limited to 'tests/qxmppmessage/tst_qxmppmessage.cpp')
-rw-r--r--tests/qxmppmessage/tst_qxmppmessage.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/qxmppmessage/tst_qxmppmessage.cpp b/tests/qxmppmessage/tst_qxmppmessage.cpp
index 1aa2c673..ee964a4c 100644
--- a/tests/qxmppmessage/tst_qxmppmessage.cpp
+++ b/tests/qxmppmessage/tst_qxmppmessage.cpp
@@ -8,6 +8,7 @@
#include "QXmppBitsOfBinaryDataList.h"
#include "QXmppEncryptedFileSource.h"
#include "QXmppMessage.h"
+#include "QXmppMessageReaction.h"
#include "QXmppMixInvitation.h"
#include "QXmppOutOfBandUrl.h"
#include "QXmppTrustMessageElement.h"
@@ -53,6 +54,7 @@ private slots:
void testSlashMe();
void testMixInvitation();
void testTrustMessageElement();
+ void testReaction();
void testE2eeFallbackBody();
void testFileSharing();
void testEncryptedFileSource();
@@ -1129,6 +1131,30 @@ void tst_QXmppMessage::testTrustMessageElement()
QVERIFY(message2.trustMessageElement());
}
+void tst_QXmppMessage::testReaction()
+{
+ const QByteArray xml(
+ "<message id=\"96d73204-a57a-11e9-88b8-4889e7820c76\" to=\"romeo@capulet.net/orchard\" type=\"chat\">"
+ "<store xmlns=\"urn:xmpp:hints\"/>"
+ "<reactions xmlns=\"urn:xmpp:reactions:0\" id=\"744f6e18-a57a-11e9-a656-4889e7820c76\">"
+ "<reaction>🐢</reaction>"
+ "<reaction>👋</reaction>"
+ "</reactions>"
+ "</message>");
+
+ QXmppMessage message1;
+ QVERIFY(!message1.reaction());
+
+ parsePacket(message1, xml);
+ QVERIFY(message1.reaction());
+ serializePacket(message1, xml);
+
+ QXmppMessage message2;
+ message2.addHint(QXmppMessage::Store);
+ message2.setReaction(QXmppMessageReaction());
+ QVERIFY(message2.reaction());
+}
+
void tst_QXmppMessage::testE2eeFallbackBody()
{
const QByteArray xml(