cellular/telephonysettings/xqbindings/psetwrapper/tsrc/ut_psetcallbarringwrapper/ut_psetcallbarringwrapper.cpp
--- a/cellular/telephonysettings/xqbindings/psetwrapper/tsrc/ut_psetcallbarringwrapper/ut_psetcallbarringwrapper.cpp Fri Apr 16 15:31:58 2010 +0300
+++ b/cellular/telephonysettings/xqbindings/psetwrapper/tsrc/ut_psetcallbarringwrapper/ut_psetcallbarringwrapper.cpp Mon May 03 13:01:45 2010 +0300
@@ -74,6 +74,10 @@
}
};
+void simulateLeaveL()
+{
+ User::Leave(KErrGeneral);
+}
/*!
UT_PSetCallBarringWrapper::UT_PSetCallBarringWrapper
@@ -325,6 +329,16 @@
ServiceGroupVoice,
PSetCallBarringWrapper::BarringTypeAllIncomingServices,
QString("1234"));
+
+// error handling
+ EXPECT(CPsetCallBarring::SetBarringL)
+ .willOnce(invokeWithoutArguments(simulateLeaveL));
+ EXPECT_EXCEPTION(
+ m_wrapper->enableBarring(
+ ServiceGroupVoice,
+ PSetCallBarringWrapper::BarringTypeAllIncomingServices,
+ QString("1234"));
+ )
QVERIFY(verify());
}
@@ -412,6 +426,46 @@
PSetCallBarringWrapper::BarringTypeAllIncomingServices,
QString("1234"));
+// error handling
+ EXPECT(CPsetCallBarring::SetBarringL)
+ .willOnce(invokeWithoutArguments(simulateLeaveL));
+ EXPECT_EXCEPTION(
+ m_wrapper->disableBarring(
+ ServiceGroupVoice,
+ PSetCallBarringWrapper::BarringTypeAllIncomingServices,
+ QString("1234"));
+ )
+
+ QVERIFY(verify());
+}
+
+
+/*!
+ UT_PSetCallBarringWrapper::t_changeBarringPassword
+ */
+void UT_PSetCallBarringWrapper::t_changeBarringPassword()
+{
+ QString oldPassword = "1234";
+ QString newPassword = "4321";
+ QString verifiedPassword = "4321";
+ RMobilePhone::TMobilePhonePasswordChangeV2 passwordChange;
+ passwordChange.iOldPassword.Copy(oldPassword.utf16());
+ passwordChange.iNewPassword.Copy(newPassword.utf16());
+ passwordChange.iVerifiedPassword.Copy(verifiedPassword.utf16());
+ EXPECT(CPsetCallBarring::ChangePasswordL)
+ .with(passwordChange);
+
+ m_wrapper->changeBarringPassword(
+ oldPassword, newPassword, verifiedPassword);
+
+// error handling
+ EXPECT(CPsetCallBarring::ChangePasswordL)
+ .willOnce(invokeWithoutArguments(simulateLeaveL));
+ EXPECT_EXCEPTION(
+ m_wrapper->changeBarringPassword(
+ oldPassword, newPassword, verifiedPassword);
+ )
+
QVERIFY(verify());
}
@@ -484,10 +538,10 @@
*/
void UT_PSetCallBarringWrapper::t_CbPasswordChangedL()
{
- // TODO: dummy test as functionality not yet implemented
TBool success = EFalse;
QT_TRAP_THROWING(
- m_wrapper->m_privateImpl->CbPasswordChangedL(success);
+ m_wrapper->m_privateImpl->CbPasswordChangedL(ETrue);
+ m_wrapper->m_privateImpl->CbPasswordChangedL(EFalse);
)
}
@@ -713,6 +767,34 @@
/*!
+ UT_PSetCallBarringWrapper::t_changeBarringPasswordRequestComplete
+ */
+void UT_PSetCallBarringWrapper::t_changeBarringPasswordRequestComplete()
+{
+ QSignalSpy spy(
+ m_wrapper,
+ SIGNAL(barringPasswordChangeRequestCompleted(int)));
+
+ QString oldPassword = "1234";
+ QString newPassword = "4321";
+ QString verifiedPassword = "4321";
+ m_wrapper->changeBarringPassword(
+ oldPassword, newPassword, verifiedPassword);
+
+ m_wrapper->m_privateImpl->RequestComplete();
+
+ if (qstrcmp(QTest::currentTestFunction(), "t_exceptionSafety") == 0) {
+ // Signal emissions from RequestComplete will fail with exception safety
+ // tests so it's not possible to verify signal data.
+ return;
+ }
+
+ QCOMPARE(spy.count(), 1);
+ QCOMPARE(spy.at(0).at(0).toInt(), 0);
+}
+
+
+/*!
UT_PSetCallBarringWrapper::t_RequestStatusChanged
*/
void UT_PSetCallBarringWrapper::t_RequestStatusChanged()