File indexing completed on 2024-05-12 05:11:12
0001 /* 0002 SPDX-FileCopyrightText: 2009 Constantin Berzan <exit3219@gmail.com> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "specialmailcollections.h" 0008 #include "specialmailcollectionssettings.h" 0009 #include "specialmailcollectionstesting_p.h" 0010 0011 #include <Akonadi/SpecialCollection> 0012 0013 using namespace Akonadi; 0014 0015 typedef SpecialMailCollectionsSettings Settings; 0016 0017 SpecialMailCollectionsTesting *SpecialMailCollectionsTesting::_t_self() 0018 { 0019 static SpecialMailCollectionsTesting instance; 0020 return &instance; 0021 } 0022 0023 void SpecialMailCollectionsTesting::_t_setDefaultResourceId(const QString &resourceId) 0024 { 0025 Settings::self()->defaultResourceIdItem()->setValue(resourceId); 0026 Settings::self()->save(); 0027 } 0028 0029 void SpecialMailCollectionsTesting::_t_forgetFoldersForResource(const QString &resourceId) 0030 { 0031 static_cast<SpecialCollections *>(SpecialMailCollections::self())->d->forgetFoldersForResource(resourceId); 0032 } 0033 0034 void SpecialMailCollectionsTesting::_t_beginBatchRegister() 0035 { 0036 static_cast<SpecialCollections *>(SpecialMailCollections::self())->d->beginBatchRegister(); 0037 } 0038 0039 void SpecialMailCollectionsTesting::_t_endBatchRegister() 0040 { 0041 static_cast<SpecialCollections *>(SpecialMailCollections::self())->d->endBatchRegister(); 0042 } 0043 0044 int SpecialMailCollectionsTesting::_t_knownResourceCount() const 0045 { 0046 return static_cast<SpecialCollections *>(SpecialMailCollections::self())->d->mFoldersForResource.count(); 0047 } 0048 0049 int SpecialMailCollectionsTesting::_t_knownFolderCount() const 0050 { 0051 const SpecialCollectionsPrivate *d = static_cast<SpecialCollections *>(SpecialMailCollections::self())->d; 0052 int ret = 0; 0053 0054 QHashIterator<QString, QHash<QByteArray, Collection>> resourceIt(d->mFoldersForResource); 0055 while (resourceIt.hasNext()) { 0056 resourceIt.next(); 0057 0058 QHashIterator<QByteArray, Collection> it(resourceIt.value()); 0059 while (it.hasNext()) { 0060 it.next(); 0061 if (it.value().isValid()) { 0062 ret++; 0063 } 0064 } 0065 } 0066 return ret; 0067 }