diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2015-06-04 08:14:39 +0200 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2015-06-04 08:14:39 +0200 |
| commit | 350b0db6c8a51ee500d3ba2d40dd421f5cf86494 (patch) | |
| tree | 79dc3e30d2e68682d58695858106d071af581827 | |
| parent | 01d4df5938e3617388b243a85021c8c1f32e9f1f (diff) | |
| parent | f2f506807bdd41795acaddc80430025fb9a62a7b (diff) | |
| download | qxmpp-350b0db6c8a51ee500d3ba2d40dd421f5cf86494.tar.gz | |
Merge branch 'LightZam-issue#56'
| -rw-r--r-- | src/base/QXmppPubSubIq.cpp | 2 | ||||
| -rw-r--r-- | tests/qxmpppubsubiq/tst_qxmpppubsubiq.cpp | 30 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/base/QXmppPubSubIq.cpp b/src/base/QXmppPubSubIq.cpp index 5560a1b3..3f311e9c 100644 --- a/src/base/QXmppPubSubIq.cpp +++ b/src/base/QXmppPubSubIq.cpp @@ -208,6 +208,7 @@ void QXmppPubSubIq::parseElementFromChild(const QDomElement &element) { case QXmppPubSubIq::ItemsQuery: case QXmppPubSubIq::PublishQuery: + case QXmppPubSubIq::RetractQuery: childElement = queryElement.firstChildElement("item"); while (!childElement.isNull()) { @@ -241,6 +242,7 @@ void QXmppPubSubIq::toXmlElementFromChild(QXmlStreamWriter *writer) const { case QXmppPubSubIq::ItemsQuery: case QXmppPubSubIq::PublishQuery: + case QXmppPubSubIq::RetractQuery: foreach (const QXmppPubSubItem &item, m_items) item.toXml(writer); break; diff --git a/tests/qxmpppubsubiq/tst_qxmpppubsubiq.cpp b/tests/qxmpppubsubiq/tst_qxmpppubsubiq.cpp index 999efc59..d3065f2a 100644 --- a/tests/qxmpppubsubiq/tst_qxmpppubsubiq.cpp +++ b/tests/qxmpppubsubiq/tst_qxmpppubsubiq.cpp @@ -33,6 +33,7 @@ private slots: void testItems(); void testItemsResponse(); void testPublish(); + void testRetractItem(); void testSubscribe(); void testSubscription(); void testSubscriptions(); @@ -135,6 +136,35 @@ void tst_QXmppPubSubIq::testPublish() serializePacket(iq, xml); } +void tst_QXmppPubSubIq::testRetractItem() +{ + const QByteArray xml( + "<iq" + " id=\"retract1\"" + " to=\"pubsub.shakespeare.lit\"" + " from=\"hamlet@denmark.lit/elsinore\"" + " type=\"set\">" + "<pubsub xmlns=\"http://jabber.org/protocol/pubsub\">" + "<retract node=\"princely_musings\">" + "<item id=\"ae890ac52d0df67ed7cfdf51b644e901\"/>" + "</retract>" + "</pubsub>" + "</iq>"); + + QXmppPubSubIq iq; + parsePacket(iq, xml); + QCOMPARE(iq.id(), QString("retract1")); + QCOMPARE(iq.to(), QLatin1String("pubsub.shakespeare.lit")); + QCOMPARE(iq.from(), QLatin1String("hamlet@denmark.lit/elsinore")); + QCOMPARE(iq.type(), QXmppIq::Set); + QCOMPARE(iq.queryType(), QXmppPubSubIq::RetractQuery); + QCOMPARE(iq.queryJid(), QString()); + QCOMPARE(iq.queryNode(), QLatin1String("princely_musings")); + QCOMPARE(iq.items().size(), 1); + QCOMPARE(iq.items().at(0).id(), QString("ae890ac52d0df67ed7cfdf51b644e901")); + serializePacket(iq, xml); +} + void tst_QXmppPubSubIq::testSubscribe() { const QByteArray xml( |
