Skip to content

Commit

Permalink
Changes: changed testPhoneNetworkType to data driven style
Browse files Browse the repository at this point in the history
RevBy: TrustMe
  • Loading branch information
Aki Koskinen committed Dec 1, 2010
1 parent 27d4b21 commit 10398a3
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 19 deletions.
61 changes: 43 additions & 18 deletions tests/ut_statusindicator/ut_statusindicator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -192,32 +192,58 @@ void Ut_StatusIndicator::testPhoneNetworkSignalStrength()
QVERIFY(statusIndicator->objectName() != "");
}

void Ut_StatusIndicator::testPhoneNetworkType()
void Ut_StatusIndicator::testPhoneNetworkTypeObjectName_data()
{
QTest::addColumn<QString>("CellularRegistrationStatus");
QTest::addColumn<QString>("CellularDataTechnology");
QTest::addColumn<QString>("ExpectedObjectNamePostfix");

QTest::newRow("Empty registration status") << QString("") << QString("") << QString("Offline");
QTest::newRow("No-sim registration status") << QString("no-sim") << QString("") << QString("NoSIM");
QTest::newRow("Offline registration status") << QString("offline") << QString("") << QString("Offline");
QTest::newRow("Home registration status without data technology") << QString("home") << QString("") << QString("NoNetwork");
QTest::newRow("Home registration status with gprs data technology") << QString("home") << QString("gprs") << QString("2G");
QTest::newRow("Home registration status with egprs data technology") << QString("home") << QString("egprs") << QString("25G");
QTest::newRow("Home registration status with umts data technology") << QString("home") << QString("umts") << QString("3G");
QTest::newRow("Home registration status with hspa data technology") << QString("home") << QString("hspa") << QString("35G");
}

void Ut_StatusIndicator::testPhoneNetworkTypeObjectName()
{
QFETCH(QString, CellularRegistrationStatus);
QFETCH(QString, CellularDataTechnology);
QFETCH(QString, ExpectedObjectNamePostfix);

m_subject = new PhoneNetworkTypeStatusIndicator(*testContext);

testContextItems["Cellular.RegistrationStatus"]->setValue(CellularRegistrationStatus);
testContextItems["Cellular.DataTechnology"]->setValue(CellularDataTechnology);

QCOMPARE(m_subject->objectName().contains(ExpectedObjectNamePostfix), QBool(true));
}

void Ut_StatusIndicator::testWhenPhoneNetworkBecomesAvailableThenSignalIsEmitted()
{
m_subject = new PhoneNetworkTypeStatusIndicator(*testContext);
QSignalSpy spy(m_subject, SIGNAL(networkAvailabilityChanged(bool)));

QVERIFY(m_subject->objectName().indexOf("Offline") >= 0);
testContextItems["Cellular.RegistrationStatus"]->setValue(QVariant("no-sim"));
QVERIFY(m_subject->objectName().indexOf("NoSIM") >= 0);
testContextItems["Cellular.RegistrationStatus"]->setValue(QVariant("offline"));
QVERIFY(m_subject->objectName().indexOf("Offline") >= 0);
testContextItems["Cellular.RegistrationStatus"]->setValue(QVariant("forbidden"));
QVERIFY(m_subject->objectName().indexOf("Offline") >= 0);
testContextItems["Cellular.RegistrationStatus"]->setValue(QVariant("home"));
QVERIFY(m_subject->objectName().indexOf("NoNetwork") >= 0);
testContextItems["Cellular.DataTechnology"]->setValue(QVariant("gprs"));
QVERIFY(m_subject->objectName().indexOf("2G") >= 0);

QCOMPARE(spy.count(), 1);
QCOMPARE(spy.at(0)[0], QVariant(true));
testContextItems["Cellular.DataTechnology"]->setValue(QVariant("egprs"));
QVERIFY(m_subject->objectName().indexOf("25G") >= 0);
testContextItems["Cellular.DataTechnology"]->setValue(QVariant("umts"));
QVERIFY(m_subject->objectName().indexOf("3G") >= 0);
testContextItems["Cellular.DataTechnology"]->setValue(QVariant("hspa"));
QVERIFY(m_subject->objectName().indexOf("35G") >= 0);
spy.clear();
}

void Ut_StatusIndicator::testWhenPhoneNetworkBecomesUnavailableThenSignalIsEmitted()
{
m_subject = new PhoneNetworkTypeStatusIndicator(*testContext);

testContextItems["Cellular.RegistrationStatus"]->setValue(QVariant("home"));
testContextItems["Cellular.DataTechnology"]->setValue(QVariant("gprs"));

QSignalSpy spy(m_subject, SIGNAL(networkAvailabilityChanged(bool)));
testContextItems["Cellular.RegistrationStatus"]->setValue(QVariant("offline"));

QCOMPARE(spy.count(), 1);
QCOMPARE(spy.at(0)[0], QVariant(false));
}
Expand Down Expand Up @@ -290,7 +316,6 @@ void Ut_StatusIndicator::testBattery()
QVERIFY(m_subject->objectName().indexOf("PowerSaveCharging") >= 0);
}


void Ut_StatusIndicator::testAlarm()
{
m_subject = new AlarmStatusIndicator(*testContext);
Expand Down
5 changes: 4 additions & 1 deletion tests/ut_statusindicator/ut_statusindicator.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,10 @@ private slots:
void testContextItemSubscribe();
void testContextItemDeletion();
void testPhoneNetworkSignalStrength();
void testPhoneNetworkType();
void testPhoneNetworkTypeObjectName_data();
void testPhoneNetworkTypeObjectName();
void testWhenPhoneNetworkBecomesAvailableThenSignalIsEmitted();
void testWhenPhoneNetworkBecomesUnavailableThenSignalIsEmitted();
void testBattery();
void testAlarm();
void testBluetooth();
Expand Down

0 comments on commit 10398a3

Please sign in to comment.