diff options
| author | Linus Jahn <lnj@kaidan.im> | 2019-06-28 16:48:42 +0200 |
|---|---|---|
| committer | LNJ <lnj@kaidan.im> | 2020-01-13 17:16:36 +0100 |
| commit | 5f46963cf556d7e7e241e7d8e59d42b31474c74d (patch) | |
| tree | 23de3b37493cb1f11c0fe5286290ff0ebda601fe /tests | |
| parent | 411cf3b9c06ec6e0b9af1b57c3370dae4640d460 (diff) | |
| download | qxmpp-5f46963cf556d7e7e241e7d8e59d42b31474c74d.tar.gz | |
QXmppClient: Add method to get index of extension
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/qxmppclient/tst_qxmppclient.cpp | 36 |
1 files changed, 32 insertions, 4 deletions
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<QXmppVersionManager>(), -1); + + // These extensions are in the list. + QCOMPARE(client->indexOfExtension<QXmppRosterManager>(), 0); + QCOMPARE(client->indexOfExtension<QXmppVCardManager>(), 1); +} + QTEST_MAIN(tst_QXmppClient) #include "tst_qxmppclient.moc" |
