aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMelvin Keskin <melvo@olomono.de>2020-04-08 23:08:38 +0200
committerLNJ <lnj@kaidan.im>2020-04-09 13:15:39 +0200
commitfe83e9c3d42c3becf682e2b5ecfc9d77b24c614f (patch)
tree11f27a30af465980a593c8e5f5ec59fa963797b8
parent3b0e2910a54f6955032f9e396bfa6bb419c71f70 (diff)
downloadqxmpp-fe83e9c3d42c3becf682e2b5ecfc9d77b24c614f.tar.gz
Add unit test for QXmppRosterIq subscription status
-rw-r--r--tests/qxmpprosteriq/tst_qxmpprosteriq.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/tests/qxmpprosteriq/tst_qxmpprosteriq.cpp b/tests/qxmpprosteriq/tst_qxmpprosteriq.cpp
index f0fb6f34..31ccffca 100644
--- a/tests/qxmpprosteriq/tst_qxmpprosteriq.cpp
+++ b/tests/qxmpprosteriq/tst_qxmpprosteriq.cpp
@@ -45,43 +45,64 @@ void tst_QXmppRosterIq::testItem_data()
{
QTest::addColumn<QByteArray>("xml");
QTest::addColumn<QString>("name");
+ QTest::addColumn<QString>("subscriptionStatus");
QTest::addColumn<int>("subscriptionType");
QTest::addColumn<bool>("approved");
QTest::newRow("none")
<< QByteArray(R"(<item jid="foo@example.com" subscription="none" approved="true"/>)")
<< ""
+ << ""
<< int(QXmppRosterIq::Item::None)
<< true;
QTest::newRow("from")
<< QByteArray(R"(<item jid="foo@example.com" subscription="from"/>)")
<< ""
+ << ""
<< int(QXmppRosterIq::Item::From)
<< false;
QTest::newRow("to")
<< QByteArray(R"(<item jid="foo@example.com" subscription="to"/>)")
<< ""
+ << ""
<< int(QXmppRosterIq::Item::To)
<< false;
QTest::newRow("both")
<< QByteArray(R"(<item jid="foo@example.com" subscription="both"/>)")
<< ""
+ << ""
<< int(QXmppRosterIq::Item::Both)
<< false;
QTest::newRow("remove")
<< QByteArray(R"(<item jid="foo@example.com" subscription="remove"/>)")
<< ""
+ << ""
<< int(QXmppRosterIq::Item::Remove)
<< false;
QTest::newRow("notset")
<< QByteArray("<item jid=\"foo@example.com\"/>")
<< ""
+ << ""
+ << int(QXmppRosterIq::Item::NotSet)
+ << false;
+
+ QTest::newRow("ask-subscribe")
+ << QByteArray("<item jid=\"foo@example.com\" ask=\"subscribe\"/>")
+ << ""
+ << "subscribe"
+ << int(QXmppRosterIq::Item::NotSet)
+ << false;
+ QTest::newRow("ask-unsubscribe")
+ << QByteArray("<item jid=\"foo@example.com\" ask=\"unsubscribe\"/>")
+ << ""
+ << "unsubscribe"
<< int(QXmppRosterIq::Item::NotSet)
<< false;
QTest::newRow("name")
<< QByteArray(R"(<item jid="foo@example.com" name="foo bar"/>)")
<< "foo bar"
+ << ""
<< int(QXmppRosterIq::Item::NotSet)
<< false;
}
@@ -90,6 +111,7 @@ void tst_QXmppRosterIq::testItem()
{
QFETCH(QByteArray, xml);
QFETCH(QString, name);
+ QFETCH(QString, subscriptionStatus);
QFETCH(int, subscriptionType);
QFETCH(bool, approved);
@@ -98,14 +120,15 @@ void tst_QXmppRosterIq::testItem()
QCOMPARE(item.bareJid(), QLatin1String("foo@example.com"));
QCOMPARE(item.groups(), QSet<QString>());
QCOMPARE(item.name(), name);
+ QCOMPARE(item.subscriptionStatus(), subscriptionStatus);
QCOMPARE(int(item.subscriptionType()), subscriptionType);
- QCOMPARE(item.subscriptionStatus(), QString());
QCOMPARE(item.isApproved(), approved);
serializePacket(item, xml);
item = QXmppRosterIq::Item();
item.setBareJid("foo@example.com");
item.setName(name);
+ item.setSubscriptionStatus(subscriptionStatus);
item.setSubscriptionType(QXmppRosterIq::Item::SubscriptionType(subscriptionType));
item.setIsApproved(approved);
serializePacket(item, xml);