File indexing completed on 2024-04-14 15:40:09

0001 /*
0002     SPDX-FileCopyrightText: 2021 Nicolas Fella <nicolas.fella@gmx.de>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #include "mobileproviders.h"
0008 #include <QTest>
0009 
0010 class MobileProvidersTest : public QObject
0011 {
0012     Q_OBJECT
0013 
0014 private Q_SLOTS:
0015     void testProviders();
0016     void testProviderFromMccMnc();
0017     void testProviderFromMccMnc_data();
0018 };
0019 
0020 void MobileProvidersTest::testProviders()
0021 {
0022     MobileProviders providers;
0023 
0024     const QStringList germanProviders = providers.getProvidersList(QStringLiteral("DE"), NetworkManager::ConnectionSettings::Gsm);
0025 
0026     QVERIFY(germanProviders.contains(QStringLiteral("Vodafone")));
0027 
0028     const QStringList vodafoneApns = providers.getApns(QStringLiteral("Vodafone"));
0029     QVERIFY(!vodafoneApns.isEmpty());
0030 
0031     const QVariantMap apnInfo = providers.getApnInfo(vodafoneApns.constFirst());
0032     QVERIFY(apnInfo.contains(QStringLiteral("apn")));
0033 }
0034 
0035 void MobileProvidersTest::testProviderFromMccMnc()
0036 {
0037     QFETCH(QString, mccmnc);
0038     QFETCH(QStringList, providerNames);
0039 
0040     MobileProviders providers;
0041 
0042     QCOMPARE(providers.getProvidersFromMCCMNC(mccmnc), providerNames);
0043 }
0044 
0045 void MobileProvidersTest::testProviderFromMccMnc_data()
0046 {
0047     QTest::addColumn<QString>("mccmnc");
0048     QTest::addColumn<QStringList>("providerNames");
0049 
0050     QTest::newRow("Aldi 1") << "26277" << QStringList{"AldiTalk/MedionMobile", "blau.de", "E-Plus", "simyo Internet"};
0051     QTest::newRow("Aldi 2") << "26203" << QStringList{"AldiTalk/MedionMobile", "blau.de", "E-Plus", "simyo Internet"};
0052     QTest::newRow("Vodafone CZ") << "23003" << QStringList{"Vodafone"};
0053     QTest::newRow("1&1") << "26202" << QStringList{"Bild Mobil", "Vodafone", "1&1"};
0054 }
0055 
0056 QTEST_GUILESS_MAIN(MobileProvidersTest)
0057 
0058 #include "mobileproviderstest.moc"