File indexing completed on 2025-02-16 04:50:14
0001 /* 0002 SPDX-FileCopyrightText: 2010 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com> 0003 SPDX-FileContributor: Kevin Ottens <kevin@kdab.com> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #pragma once 0009 0010 #include "kimaptest/fakeserver.h" 0011 0012 #include "dummypasswordrequester.h" 0013 #include "dummyresourcestate.h" 0014 #include "imapaccount.h" 0015 #include "resourcetask.h" 0016 #include "sessionpool.h" 0017 0018 Q_DECLARE_METATYPE(ImapAccount *) 0019 Q_DECLARE_METATYPE(DummyPasswordRequester *) 0020 Q_DECLARE_METATYPE(DummyResourceState::Ptr) 0021 Q_DECLARE_METATYPE(KIMAP::Session *) 0022 Q_DECLARE_METATYPE(QVariant) 0023 0024 class ImapTestBase : public QObject 0025 { 0026 Q_OBJECT 0027 0028 public: 0029 ImapTestBase(QObject *parent = nullptr); 0030 0031 protected: 0032 QString defaultUserName() const; 0033 QString defaultPassword() const; 0034 ImapAccount *createDefaultAccount() const; 0035 DummyPasswordRequester *createDefaultRequester(); 0036 QList<QByteArray> defaultAuthScenario() const; 0037 QList<QByteArray> defaultPoolConnectionScenario(const QList<QByteArray> &customCapabilities = QList<QByteArray>()) const; 0038 0039 bool waitForSignal(QObject *obj, const char *member, int timeout = 500) const; 0040 0041 Akonadi::Collection createCollectionChain(const QString &remoteId) const; 0042 0043 private Q_SLOTS: 0044 void setupTestCase(); 0045 };