diff options
| author | Linus Jahn <lnj@kaidan.im> | 2021-09-29 15:45:52 +0200 |
|---|---|---|
| committer | Linus Jahn <lnj@kaidan.im> | 2021-09-29 16:37:41 +0200 |
| commit | 1654f24a1af4f96f2f1a06a2308bd05ad6f9c978 (patch) | |
| tree | 898701a74cc1977cb0d1781beb75a8c86ef1dddb /tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp | |
| parent | 9b21bef379d94876908cbb706c9ba2438779bf54 (diff) | |
| download | qxmpp-1654f24a1af4f96f2f1a06a2308bd05ad6f9c978.tar.gz | |
PubSubManager: Add create node requests with config
Diffstat (limited to 'tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp')
| -rw-r--r-- | tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp b/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp index 9c80a1b8..4bbcdf77 100644 --- a/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp +++ b/tests/qxmpppubsubmanager/tst_qxmpppubsubmanager.cpp @@ -82,7 +82,9 @@ private: Q_SLOT void testFetchNodes(); Q_SLOT void testCreateNodes_data(); Q_SLOT void testCreateNodes(); + Q_SLOT void testCreateNodeWithConfig(); Q_SLOT void testCreateInstantNode(); + Q_SLOT void testCreateInstantNodeWithConfig(); Q_SLOT void testDeleteNodes_data(); Q_SLOT void testDeleteNodes(); Q_SLOT void testPublishItems_data(); @@ -170,6 +172,27 @@ void tst_QXmppPubSubManager::testCreateNodes() expectFutureVariant<QXmpp::Success>(future); } +void tst_QXmppPubSubManager::testCreateNodeWithConfig() +{ + auto [test, psManager] = Client(); + QXmppPubSubNodeConfig config; + config.setTitle("Princely Musings (Atom)"); + auto future = psManager->createNode("pubsub.qxmpp.org", "princely_musings", config); + test.expect("<iq id='qxmpp1' to='pubsub.qxmpp.org' type='set'>" + "<pubsub xmlns='http://jabber.org/protocol/pubsub'>" + "<create node='princely_musings'/>" + "<configure>" + "<x xmlns='jabber:x:data' type='submit'>" + "<field type='hidden' var='FORM_TYPE'><value>http://jabber.org/protocol/pubsub#node_config</value></field>" + "<field type='text-single' var='pubsub#title'><value>Princely Musings (Atom)</value></field>" + "</x>" + "</configure>" + "</pubsub>" + "</iq>"); + test.inject<QString>("<iq id='qxmpp1' type='result'/>"); + expectFutureVariant<QXmpp::Success>(future); +} + void tst_QXmppPubSubManager::testCreateInstantNode() { TestClient test; @@ -187,6 +210,30 @@ void tst_QXmppPubSubManager::testCreateInstantNode() QCOMPARE(nodeId, QString("25e3d37dabbab9541f7523321421edc5bfeb2dae")); } +void tst_QXmppPubSubManager::testCreateInstantNodeWithConfig() +{ + auto [test, psManager] = Client(); + QXmppPubSubNodeConfig config; + config.setTitle("Princely Musings (Atom)"); + auto future = psManager->createInstantNode("pubsub.qxmpp.org", config); + test.expect("<iq id='qxmpp1' to='pubsub.qxmpp.org' type='set'>" + "<pubsub xmlns='http://jabber.org/protocol/pubsub'>" + "<create/>" + "<configure>" + "<x xmlns='jabber:x:data' type='submit'>" + "<field type='hidden' var='FORM_TYPE'><value>http://jabber.org/protocol/pubsub#node_config</value></field>" + "<field type='text-single' var='pubsub#title'><value>Princely Musings (Atom)</value></field>" + "</x>" + "</configure>" + "</pubsub>" + "</iq>"); + test.inject<QString>("<iq type='result' from='pubsub.qxmpp.org' id='qxmpp1'>" + "<pubsub xmlns='http://jabber.org/protocol/pubsub'>" + "<create node='25e3d37dabbab9541f7523321421edc5bfeb2dae'/>" + "</pubsub></iq>"); + QCOMPARE(expectFutureVariant<QString>(future), QStringLiteral("25e3d37dabbab9541f7523321421edc5bfeb2dae")); +} + void tst_QXmppPubSubManager::testDeleteNodes_data() { QTest::addColumn<bool>("isPep"); |
