aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMelvin Keskin <melvo@olomono.de>2022-04-07 18:38:22 +0200
committerLinus Jahn <lnj@kaidan.im>2022-04-09 22:27:10 +0200
commitf78931350a05c950a7e650805d5db02ae7b9ac86 (patch)
tree17f0ac4f7952ef0d017eea57931e265a0c4bf14a /tests
parent0655b3eb3e2d110434b0d6f4d1ddee7697f1c0b6 (diff)
downloadqxmpp-f78931350a05c950a7e650805d5db02ae7b9ac86.tar.gz
PubSubManager: Add subscribeToNode()/unsubscribeFromNode()
Diffstat (limited to 'tests')
-rw-r--r--tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp b/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp
index e4cb09e4..f7f91ec3 100644
--- a/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp
+++ b/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp
@@ -97,6 +97,8 @@ private:
Q_SLOT void testRequestNodeConfig();
Q_SLOT void testConfigureNode();
Q_SLOT void testCancelConfig();
+ Q_SLOT void testSubscribeToNode();
+ Q_SLOT void testUnsubscribeFromNode();
Q_SLOT void testEventNotifications_data();
Q_SLOT void testEventNotifications();
};
@@ -985,6 +987,40 @@ void tst_QXmppPubSubManager::testCancelConfig()
expectFutureVariant<QXmpp::Success>(future);
}
+void tst_QXmppPubSubManager::testSubscribeToNode()
+{
+ auto [test, psManager] = Client();
+
+ auto future = psManager->subscribeToNode(QStringLiteral("pubsub.shakespeare.lit"), QStringLiteral("princely_musings"), QStringLiteral("francisco@denmark.lit"));
+ test.expect(QStringLiteral("<iq id='qxmpp1' to='pubsub.shakespeare.lit' type='set'>"
+ "<pubsub xmlns='http://jabber.org/protocol/pubsub'>"
+ "<subscribe jid='francisco@denmark.lit' node='princely_musings'/>"
+ "</pubsub></iq>"));
+ test.inject(QStringLiteral("<iq id='qxmpp1' from='pubsub.shakespeare.lit' to='francisco@denmark.lit/barracks' type='result'>"
+ "<pubsub xmlns='http://jabber.org/protocol/pubsub'>"
+ "<subscription jid='francisco@denmark.lit' node='princely_musings' subid='ba49252aaa4f5d320c24d3766f0bdcade78c78d3' subscription='subscribed'/>"
+ "</pubsub></iq>"));
+
+ expectFutureVariant<QXmpp::Success>(future);
+}
+
+void tst_QXmppPubSubManager::testUnsubscribeFromNode()
+{
+ auto [test, psManager] = Client();
+
+ auto future = psManager->unsubscribeFromNode(QStringLiteral("pubsub.shakespeare.lit"), QStringLiteral("princely_musings"), QStringLiteral("francisco@denmark.lit"));
+ test.expect(QStringLiteral("<iq id='qxmpp1' to='pubsub.shakespeare.lit' type='set'>"
+ "<pubsub xmlns='http://jabber.org/protocol/pubsub'>"
+ "<unsubscribe jid='francisco@denmark.lit' node='princely_musings'/>"
+ "</pubsub></iq>"));
+ test.inject(QStringLiteral("<iq id='qxmpp1' from='pubsub.shakespeare.lit' to='francisco@denmark.lit/barracks' type='result'>"
+ "<pubsub xmlns='http://jabber.org/protocol/pubsub'>"
+ "<subscription jid='francisco@denmark.lit' node='princely_musings' subid='ba49252aaa4f5d320c24d3766f0bdcade78c78d3' subscription='none'/>"
+ "</pubsub></iq>"));
+
+ expectFutureVariant<QXmpp::Success>(future);
+}
+
void tst_QXmppPubSubManager::testEventNotifications_data()
{
QTest::addColumn<QString>("xml");