From 5f46963cf556d7e7e241e7d8e59d42b31474c74d Mon Sep 17 00:00:00 2001 From: Linus Jahn Date: Fri, 28 Jun 2019 16:48:42 +0200 Subject: QXmppClient: Add method to get index of extension --- tests/qxmppclient/tst_qxmppclient.cpp | 36 +++++++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) (limited to 'tests/qxmppclient/tst_qxmppclient.cpp') diff --git a/tests/qxmppclient/tst_qxmppclient.cpp b/tests/qxmppclient/tst_qxmppclient.cpp index e99410f5..122d6aca 100644 --- a/tests/qxmppclient/tst_qxmppclient.cpp +++ b/tests/qxmppclient/tst_qxmppclient.cpp @@ -3,6 +3,7 @@ * * Authors: * Linus Jahn + * Melvin Keskin * * Source: * https://github.com/qxmpp-project/qxmpp @@ -26,6 +27,10 @@ #include "QXmppClient.h" #include "QXmppLogger.h" #include "QXmppMessage.h" +#include "QXmppRosterManager.h" +#include "QXmppVCardManager.h" +#include "QXmppVersionManager.h" + #include "util.h" class tst_QXmppClient : public QObject @@ -35,14 +40,16 @@ class tst_QXmppClient : public QObject private slots: void initTestCase(); - void testSendMessage(); void handleMessageSent(QXmppLogger::MessageType type, const QString &text) const; + void testSendMessage(); + + void testIndexOfExtension(); private: QXmppClient *client; }; -void tst_QXmppClient::handleMessageSent(QXmppLogger::MessageType type, const QString& text) const +void tst_QXmppClient::handleMessageSent(QXmppLogger::MessageType type, const QString &text) const { QCOMPARE(type, QXmppLogger::MessageType::SentMessage); @@ -69,13 +76,34 @@ void tst_QXmppClient::testSendMessage() client->sendMessage( QStringLiteral("support@qxmpp.org"), - QStringLiteral("implement XEP-* plz") - ); + QStringLiteral("implement XEP-* plz")); // see handleMessageSent() client->setLogger(nullptr); } +void tst_QXmppClient::testIndexOfExtension() +{ + auto client = new QXmppClient; + + for (auto *ext : client->extensions()) { + client->removeExtension(ext); + } + + auto rosterManager = new QXmppRosterManager(client); + auto vCardManager = new QXmppVCardManager; + + client->addExtension(rosterManager); + client->addExtension(vCardManager); + + // This extension is not in the list. + QCOMPARE(client->indexOfExtension(), -1); + + // These extensions are in the list. + QCOMPARE(client->indexOfExtension(), 0); + QCOMPARE(client->indexOfExtension(), 1); +} + QTEST_MAIN(tst_QXmppClient) #include "tst_qxmppclient.moc" -- cgit v1.2.3