diff -r 7d48bed6ce0c -r 987c9837762f cellular/telephonysettings/xqbindings/psetwrapper/tsrc/ut_psetcalldivertingwrapper/ut_psetcalldivertingwrapper.cpp --- a/cellular/telephonysettings/xqbindings/psetwrapper/tsrc/ut_psetcalldivertingwrapper/ut_psetcalldivertingwrapper.cpp Tue Aug 31 15:45:17 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,735 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include -#include -#include -#include "ut_psetcalldivertingwrapper.h" -#include "mock_cphcltemergencycall.h" -#include "testutilities.h" -#define private public -#include "psetcalldivertingwrapper.h" -#include "psetcalldivertingwrapper_p.h" - -class DivertObserver : public MPsetDivertObserver -{ - void HandleDivertingChangedL( - const TCallDivertSetting& aSetting, TBool aPlural) - { - Q_UNUSED(aSetting); - Q_UNUSED(aPlural); - } - - void HandleDivertingStatusL(CMobilePhoneCFList& aSetting, TBool aPlural) - { - Q_UNUSED(aSetting); - Q_UNUSED(aPlural); - } - - void HandleDivertingErrorL(TInt aReason) - { - Q_UNUSED(aReason); - } - - void HandleCFRequestingL(TBool aOngoing, - TBool aInterrupted) - { - Q_UNUSED(aOngoing); - Q_UNUSED(aInterrupted); - } - - void SetEngineContact(MPsetCallDiverting* aDivertEngine) - { - Q_UNUSED(aDivertEngine); - } -}; - -void SimulateLeaveL() -{ - User::Leave(KErrGeneral); -} - -/*! - UT_PSetCallDivertingWrapper::UT_PSetWrapperCallDiverting - */ -UT_PSetCallDivertingWrapper::UT_PSetCallDivertingWrapper() - : mWrapper(NULL), mSetContainerMock(NULL) -{ -} - -/*! - UT_PSetCallDivertingWrapper::~UT_PSetWrapperCallDiverting - */ -UT_PSetCallDivertingWrapper::~UT_PSetCallDivertingWrapper() -{ - delete mWrapper; - delete mSetContainerMock; - mPsetCallDivertingMock = NULL; -} - -/*! - UT_PSetCallDivertingWrapper::init - */ -void UT_PSetCallDivertingWrapper::init() -{ - initialize(); - CPhCltEmergencyCallMock::iSimulateEmergencyNumberMatch = false; - - mSetContainerMock = new CPsetContainer(); - - RMobilePhone dummyHandle; - DivertObserver dummyObsever; - QT_TRAP_THROWING(mPsetCallDivertingMock - = CPsetCallDiverting::NewL(dummyObsever, dummyHandle)); - expect("CPsetContainer::CreateCFObjectL").returns(mPsetCallDivertingMock); - - // Wrapper takes ownership of callDivertingMock during construction. - // Mock must be deleted here if exception happens during construction. - QScopedPointer divertingMockPtr(mPsetCallDivertingMock); - mWrapper = new PSetCallDivertingWrapper(*mSetContainerMock, NULL); - divertingMockPtr.take(); -} - -/*! - UT_PSetCallDivertingWrapper::cleanup - */ -void UT_PSetCallDivertingWrapper::cleanup() -{ - reset(); - - delete mWrapper; - mWrapper = NULL; - delete mSetContainerMock; - mSetContainerMock = NULL; - mPsetCallDivertingMock = NULL; -} - -/*! - UT_PSetCallDivertingWrapper::t_construction - */ -void UT_PSetCallDivertingWrapper::t_construction() -{ - if (qstrcmp(QTest::currentTestFunction(), "t_exceptionSafety") != 0) { - - expect("CPsetContainer::CreateCFObjectL"). - willOnce(invokeWithoutArguments(SimulateLeaveL)); - PSetCallDivertingWrapper *wrapper = NULL; - EXPECT_EXCEPTION( - wrapper = new PSetCallDivertingWrapper(*mSetContainerMock, NULL); - delete wrapper; - wrapper = NULL; - ) - QVERIFY(verify()); - - expect("CPhCltEmergencyCallMock::NewL"). - willOnce(invokeWithoutArguments(SimulateLeaveL)); - EXPECT_EXCEPTION( - wrapper = new PSetCallDivertingWrapper(*mSetContainerMock, NULL); - delete wrapper; - wrapper = NULL; - ) - QVERIFY(verify()); - } -} - -/*! - UT_PSetCallDivertingWrapper::t_setCallDivertingWithValidParameters - */ -void UT_PSetCallDivertingWrapper::t_setCallDivertingWithValidParameters() -{ - PSCallDivertingCommand divertingCmd; - divertingCmd.iCondition = DivertConditionUnconditional; - divertingCmd.iSetting = RegisterDiverting; - divertingCmd.iStatus = DivertingStatusUnknown; - divertingCmd.iServiceGroup = ServiceGroupVoice; - divertingCmd.iNumber = "1234567890"; - divertingCmd.iNoReplyTimer = 0; - - TCallDivertSetting expectedParam; - expectedParam.iCondition = EDivertConditionUnconditional; - expectedParam.iSetting = ERegisterDiverting; - expectedParam.iStatus = EDivertingStatusUnknown; - expectedParam.iServiceGroup = EServiceGroupVoice; - expectedParam.iNumber - = TPtrC16(reinterpret_cast(divertingCmd.iNumber.utf16())); - expectedParam.iNoReplyTimer - = static_cast(divertingCmd.iNoReplyTimer); - TBool isVmbx = EFalse; - expect("CPsetCallDiverting::SetDivertingL"). - with(expectedParam, ETelephony, isVmbx); - - mWrapper->setCallDiverting(divertingCmd, ETelephony); - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_setCallDivertingWithInvalidNumber - */ -void UT_PSetCallDivertingWrapper::t_setCallDivertingWithInvalidNumber() -{ - PSCallDivertingCommand divertingCmd; - divertingCmd.iCondition = DivertConditionUnconditional; - divertingCmd.iSetting = RegisterDiverting; - divertingCmd.iStatus = DivertingStatusUnknown; - divertingCmd.iServiceGroup = ServiceGroupVoice; - divertingCmd.iNoReplyTimer = 0; - - expect("CPsetCallDiverting::SetDivertingL").times(0); - - // DTMF digits "*#pw" are not allowed characters - divertingCmd.iNumber = "*"; - int result = mWrapper->setCallDiverting(divertingCmd, ETelephony); - QVERIFY(result == KErrGsmSSUnknownAlphabet); - divertingCmd.iNumber = "#"; - result = mWrapper->setCallDiverting(divertingCmd, ETelephony); - QVERIFY(result == KErrGsmSSUnknownAlphabet); - divertingCmd.iNumber = "p"; - result = mWrapper->setCallDiverting(divertingCmd, ETelephony); - QVERIFY(result == KErrGsmSSUnknownAlphabet); - divertingCmd.iNumber = "w"; - result = mWrapper->setCallDiverting(divertingCmd, ETelephony); - QVERIFY(result == KErrGsmSSUnknownAlphabet); - - // plus allowed only in the beginning of the number - divertingCmd.iNumber = "++"; - result = mWrapper->setCallDiverting(divertingCmd, ETelephony); - QVERIFY(result == KErrGsmSSUnknownAlphabet); - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_setCallDivertingWithEmergencyNumber - */ -void UT_PSetCallDivertingWrapper::t_setCallDivertingWithEmergencyNumber() -{ - PSCallDivertingCommand divertingCmd; - divertingCmd.iCondition = DivertConditionUnconditional; - divertingCmd.iSetting = RegisterDiverting; - divertingCmd.iStatus = DivertingStatusUnknown; - divertingCmd.iServiceGroup = ServiceGroupVoice; - divertingCmd.iNumber = "112"; - divertingCmd.iNoReplyTimer = 0; - - expect("CPsetCallDiverting::SetDivertingL").times(0); - CPhCltEmergencyCallMock::iSimulateEmergencyNumberMatch = ETrue; - expect("CPhCltEmergencyCallMock::IsEmergencyPhoneNumber").returns(KErrNone); - - int result = mWrapper->setCallDiverting(divertingCmd, ETelephony); - QVERIFY(result == KErrGsmSSIllegalOperation); - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_setCallDivertingException - */ -void UT_PSetCallDivertingWrapper::t_setCallDivertingException() -{ - PSCallDivertingCommand divertingCmd; - divertingCmd.iCondition = DivertConditionUnconditional; - divertingCmd.iSetting = RegisterDiverting; - divertingCmd.iStatus = DivertingStatusUnknown; - divertingCmd.iServiceGroup = ServiceGroupVoice; - divertingCmd.iNumber = "1234567890"; - divertingCmd.iNoReplyTimer = 0; - - expect("CPsetCallDiverting::SetDivertingL"). - willOnce(invokeWithoutArguments(this, &simulateLeaveOnMockMethodCallL)); - - EXPECT_EXCEPTION( - mWrapper->setCallDiverting(divertingCmd, ETelephony); - ) - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_getCallDivertingStatus - */ -void UT_PSetCallDivertingWrapper::t_getCallDivertingStatus() -{ - expect("CPsetCallDiverting::GetDivertingStatusL"). - with(EServiceGroupVoice, EDivertConditionUnconditional, ETelephony); - - mWrapper->getCallDivertingStatus( - ServiceGroupVoice, DivertConditionUnconditional, ETelephony); - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_getCallDivertingStatusException - */ -void UT_PSetCallDivertingWrapper::t_getCallDivertingStatusException() -{ - expect("CPsetCallDiverting::GetDivertingStatusL"). - with(EServiceGroupVoice, EDivertConditionUnconditional, ETelephony). - willOnce(invokeWithoutArguments(this, &simulateLeaveOnMockMethodCallL)); - - EXPECT_EXCEPTION( - mWrapper->getCallDivertingStatus( - ServiceGroupVoice, DivertConditionUnconditional, ETelephony); - ) - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_cancelProcess - */ -void UT_PSetCallDivertingWrapper::t_cancelProcess() -{ - expect("CPsetCallDiverting::CancelCurrentRequest"); - - mWrapper->cancelProcess(); - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_getDefaultNumbers - */ -void UT_PSetCallDivertingWrapper::t_getDefaultNumbers() -{ - expect("CPsetCallDiverting::GetDefaultNumbersL").times(1); - - QStringList defNumbers; - mWrapper->getDefaultNumbers(defNumbers); - - // 2 numbers added in mock_psetcalldiverting.cpp - QVERIFY(2 == defNumbers.count()); - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_getDefaultNumbersException - */ -void UT_PSetCallDivertingWrapper::t_getDefaultNumbersException() -{ - expect("CPsetCallDiverting::GetDefaultNumbersL"). - willOnce(invokeWithoutArguments(this, &simulateLeaveOnMockMethodCallL)); - - QStringList defNumbers; - EXPECT_EXCEPTION( - mWrapper->getDefaultNumbers(defNumbers); - ) - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_setNewDefaultNumber - */ -void UT_PSetCallDivertingWrapper::t_setNewDefaultNumber() -{ - expect("CPsetCallDiverting::SetNewDefaultNumberL").times(1); - expect("CPsetCallDiverting::SwapDefaultNumberL").times(0); - - // number not added in mock_psetcalldiverting.cpp - QString defNumber = "444444"; - mWrapper->setNewDefaultNumber(defNumber); - - expect("CPsetCallDiverting::GetDefaultNumbersL") - .willOnce(invoke(SimulateLeaveL)); - EXPECT_EXCEPTION( - mWrapper->setNewDefaultNumber(defNumber); - ) - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_getVoiceMailBoxNumber - */ -void UT_PSetCallDivertingWrapper::t_getVoiceMailBoxNumber() -{ - // Fail case #1, illegal argument - QString defNumber; - int ret; - - expect("CVoiceMailbox::GetStoredEntry").returns(-2).times(1); - ret = mWrapper->getVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - // Fail case #2, Not supported. - expect("CVoiceMailbox::GetStoredEntry").returns(-5).times(1); - ret = mWrapper->getVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, -1); - - // Fail case #3, number nok - expect("CVoiceMailbox::GetStoredEntry").times(1); - expect("CVoiceMailboxEntry::GetVmbxNumber").returns(-1).times(1); - ret = mWrapper->getVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - // ok case#1, number and save ok but no new number. - expect("CVoiceMailbox::GetStoredEntry").returns(-1).times(1); - ret = mWrapper->getVoiceMailBoxNumber(defNumber, ServiceGroupData); - QCOMPARE(ret, 0); - - // ok case#2, number ok - expect("CVoiceMailbox::GetStoredEntry").times(1); - expect("CVoiceMailboxEntry::GetVmbxNumber").times(1); - ret = mWrapper->getVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - expect("CVoiceMailbox::NewL") - .willOnce(invoke(SimulateLeaveL)); - EXPECT_EXCEPTION( - mWrapper->getVoiceMailBoxNumber(defNumber, ServiceGroupFax); - ) - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_queryVoiceMailBoxNumber - */ -void UT_PSetCallDivertingWrapper::t_queryVoiceMailBoxNumber() -{ - // Fail case #1, illegal argument - QString defNumber; - int ret; - expect("CVoiceMailbox::GetStoredEntry").returns(-2).times(1); - ret = mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - // Fail case #2, Not supported. - expect("CVoiceMailbox::GetStoredEntry").returns(-5).times(1); - ret = mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, -1); - - // Fail case #3, New number not given. - expect("CVoiceMailbox::GetStoredEntry").times(1); - expect("CVoiceMailbox::QueryNewEntry").returns(-5).times(1); - ret = mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - // Fail case #4, save nok - expect("CVoiceMailbox::GetStoredEntry").returns(-1).times(1); - expect("CVoiceMailbox::QueryNewEntry").times(1); - expect("CVoiceMailbox::SaveEntry").returns(-4).times(1); - ret = mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupData); - QCOMPARE(ret, 0); - - // ok case#1, number and save ok but no new number. - expect("CVoiceMailbox::GetStoredEntry").returns(-1).times(1); - expect("CVoiceMailbox::QueryNewEntry").times(1); - expect("CVoiceMailbox::SaveEntry").times(1); - expect("CVoiceMailboxEntry::GetVmbxNumber").returns(-5).times(1); - ret = mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - // ok case#2, number ok - expect("CVoiceMailbox::GetStoredEntry").times(1); - expect("CVoiceMailbox::QueryNewEntry").times(1); - expect("CVoiceMailbox::SaveEntry").times(1); - expect("CVoiceMailboxEntry::GetVmbxNumber").times(1); - ret = mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupVoice); - QCOMPARE(ret, 0); - - expect("CVoiceMailbox::NewL") - .willOnce(invoke(SimulateLeaveL)); - EXPECT_EXCEPTION( - mWrapper->queryVoiceMailBoxNumber(defNumber, ServiceGroupFax); - ) - - QVERIFY(true == verify()); -} - -/*! - UT_PSetCallDivertingWrapper::t_swapDefaultNumber - */ -void UT_PSetCallDivertingWrapper::t_swapDefaultNumber() -{ - expect("CPsetCallDiverting::SetNewDefaultNumberL").times(0); - expect("CPsetCallDiverting::SwapDefaultNumberL").times(1); - - // same number added in mock_psetcalldiverting.cpp - QString defNumber = "222222"; - mWrapper->setNewDefaultNumber(defNumber); - - QVERIFY(true == verify()); -} - - -Q_DECLARE_METATYPE(PSCallDivertingCommand) -/*! - UT_PSetCallDivertingWrapper::t_handleDivertingChanged - */ -void UT_PSetCallDivertingWrapper::t_handleDivertingChanged() -{ - qRegisterMetaType("PSCallDivertingCommand"); - QSignalSpy spy(mWrapper, - SIGNAL(handleDivertingChanged(const PSCallDivertingCommand&, bool))); - - TCallDivertSetting setting; - setting.iCondition = EDivertConditionUnconditional; - setting.iSetting = EActivateDiverting; - setting.iStatus = EDivertingStatusUnknown; - setting.iServiceGroup = EServiceGroupAllTeleservices; - setting.iNumber = KNullDesC(); - TBool plural = ETrue; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingChangedL(setting, plural)); - - setting.iCondition = EDivertConditionBusy; - setting.iStatus = EDivertingStatusActive; - setting.iServiceGroup = EServiceGroupVoice; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingChangedL(setting, plural)); - setting.iCondition = EDivertConditionNoReply; - setting.iStatus = EDivertingStatusInactive; - setting.iServiceGroup = EServiceGroupData; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingChangedL(setting, plural)); - setting.iCondition = EDivertConditionNotReachable; - setting.iStatus = EDivertingStatusNotRegistered; - setting.iServiceGroup = EServiceGroupFax; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingChangedL(setting, plural)); - setting.iCondition = EDivertConditionAllCalls; - setting.iStatus = EDivertingStatusNotProvisioned; - setting.iServiceGroup = EServiceGroupFax; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingChangedL(setting, plural)); - setting.iCondition = EDivertConditionAllConditionalCases; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingChangedL(setting, plural)); - - QCOMPARE(spy.count(), 6); - PSCallDivertingCommand actualCmd = - qvariant_cast(spy.at(0).at(0)); - QVERIFY(actualCmd.iCondition == DivertConditionUnconditional); - QVERIFY(actualCmd.iSetting == ActivateDiverting); - QVERIFY(actualCmd.iStatus == DivertingStatusUnknown); - QVERIFY(actualCmd.iServiceGroup == ServiceGroupAllTeleservices); - QVERIFY(actualCmd.iNumber == QString::fromUtf16(setting.iNumber.Ptr(), - setting.iNumber.Length())); - QVERIFY(spy.at(0).at(1).toBool() == true); - - actualCmd = qvariant_cast(spy.at(1).at(0)); - QVERIFY(actualCmd.iCondition == DivertConditionBusy); - QVERIFY(actualCmd.iStatus == DivertingStatusActive); - QVERIFY(actualCmd.iServiceGroup == ServiceGroupVoice); - actualCmd = qvariant_cast(spy.at(2).at(0)); - QVERIFY(actualCmd.iCondition == DivertConditionNoReply); - QVERIFY(actualCmd.iStatus == DivertingStatusInactive); - QVERIFY(actualCmd.iServiceGroup == ServiceGroupData); - actualCmd = qvariant_cast(spy.at(3).at(0)); - QVERIFY(actualCmd.iCondition == DivertConditionNotReachable); - QVERIFY(actualCmd.iStatus == DivertingStatusNotRegistered); - QVERIFY(actualCmd.iServiceGroup == ServiceGroupFax); - actualCmd = qvariant_cast(spy.at(4).at(0)); - QVERIFY(actualCmd.iCondition == DivertConditionAllCalls); - QVERIFY(actualCmd.iStatus == DivertingStatusNotProvisioned); - QVERIFY(actualCmd.iServiceGroup == ServiceGroupFax); - actualCmd = qvariant_cast(spy.at(5).at(0)); - QVERIFY(actualCmd.iCondition == DivertConditionAllConditionalCases); - - QVERIFY(true == verify()); -} - - -/*! - UT_PSetCallDivertingWrapper::t_handleDivertingStatus - */ -void UT_PSetCallDivertingWrapper::t_handleDivertingStatus() -{ - qRegisterMetaType >("QList&"); - QSignalSpy spy(mWrapper, - SIGNAL(handleDivertingStatus(QList&, bool))); - - // With empty list - CMobilePhoneCFList* cfList = NULL; - QT_TRAP_THROWING(cfList = CMobilePhoneCFList::NewL()); - QScopedPointer cfListDeleter(cfList); - TBool plural = ETrue; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingStatusL(*cfList, plural)); - - QCOMPARE(spy.count(), 1); - QVERIFY(spy.at(0).at(1).toBool() == true); - spy.clear(); - - // With list entry - RMobilePhone::TMobilePhoneCFInfoEntryV1 entry; - entry.iStatus = RMobilePhone::ECallForwardingStatusNotProvisioned; - entry.iCondition = RMobilePhone::ECallForwardingAllConditionalCases; - cfList->AddEntryL(entry); - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingStatusL(*cfList, plural)); - - QCOMPARE(spy.count(), 1); - QList result = - *reinterpret_cast *>(spy.at(0).at(0).constData()); - - QVERIFY(result.at(0)->iStatus == DivertingStatusNotProvisioned); - QVERIFY(result.at(0)->iCondition == DivertConditionAllConditionalCases); - QVERIFY(spy.at(0).at(1).toBool() == true); - spy.clear(); - - // With list, two entries - delete cfList; - QT_TRAP_THROWING(cfList = CMobilePhoneCFList::NewL()); - entry.iStatus = RMobilePhone::ECallForwardingStatusNotActive; - entry.iCondition = RMobilePhone::ECallForwardingBusy; - cfList->AddEntryL(entry); // Takes copy - - RMobilePhone::TMobilePhoneCFInfoEntryV1 entry2; - entry2.iStatus = RMobilePhone::ECallForwardingStatusActive; - entry2.iCondition = RMobilePhone::ECallForwardingUnconditional; - cfList->AddEntryL(entry2); - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleDivertingStatusL(*cfList, plural)); - - QCOMPARE(spy.count(), 1); - result = *reinterpret_cast *>(spy.at(0).at(0).constData()); - QVERIFY(result.at(0)->iStatus == DivertingStatusInactive); - QVERIFY(result.at(0)->iCondition == DivertConditionBusy); - - QVERIFY(result.at(1)->iStatus == DivertingStatusActive); - QVERIFY(result.at(1)->iCondition == DivertConditionUnconditional); - QVERIFY(spy.at(0).at(1).toBool() == true); - spy.clear(); -} - -/*! - UT_PSetCallDivertingWrapper::t_handleDivertingError - */ -void UT_PSetCallDivertingWrapper::t_handleDivertingError() -{ - QSignalSpy spy(mWrapper, SIGNAL(handleDivertingError(int))); - - QT_TRAP_THROWING(mWrapper->m_Priv->HandleDivertingErrorL(KErrGeneral)); - - QCOMPARE(spy.count(), 1); - QVERIFY(spy.at(0).at(0).toInt() == KErrGeneral); -} - -/*! - UT_PSetCallDivertingWrapper::t_handleCFRequesting - */ -void UT_PSetCallDivertingWrapper::t_handleCFRequesting() -{ - QSignalSpy spy(mWrapper, SIGNAL(handleCFRequesting(bool, bool))); - - TBool ongoing = ETrue; - TBool interrupted = ETrue; - QT_TRAP_THROWING( - mWrapper->m_Priv->HandleCFRequestingL(ongoing, interrupted)); - - QCOMPARE(spy.count(), 1); - QVERIFY(spy.at(0).at(0).toBool() == true); - QVERIFY(spy.at(0).at(1).toBool() == true); -} - -/*! - UT_PSetCallDivertingWrapper::t_setEngineContact - TODO: dummy test because no implementation for the method currently. - */ -void UT_PSetCallDivertingWrapper::t_setEngineContact() -{ - mWrapper->m_Priv->SetEngineContact(mPsetCallDivertingMock); -} - -/*! - UT_PSetCallDivertingWrapper::t_handleEmergencyDial - TODO: dummy test because no implementation for the method currently. - */ -void UT_PSetCallDivertingWrapper::t_handleEmergencyDial() -{ - QT_TRAP_THROWING(mWrapper->m_Priv->HandleEmergencyDialL(KErrNone)); -} - -/*! - UT_PSetCallDivertingWrapper::t_convertPsCallDivertingCondition - */ -void UT_PSetCallDivertingWrapper::t_convertPsCallDivertingCondition() -{ - QVERIFY(EDivertConditionUnconditional == - mWrapper->m_Priv->convert(DivertConditionUnknown)); - QVERIFY(EDivertConditionUnconditional == - mWrapper->m_Priv->convert(DivertConditionUnconditional)); - QVERIFY(EDivertConditionBusy == - mWrapper->m_Priv->convert(DivertConditionBusy)); - QVERIFY(EDivertConditionNoReply == - mWrapper->m_Priv->convert(DivertConditionNoReply)); - QVERIFY(EDivertConditionNotReachable == - mWrapper->m_Priv->convert(DivertConditionNotReachable)); - QVERIFY(EDivertConditionAllCalls == - mWrapper->m_Priv->convert(DivertConditionAllCalls)); - QVERIFY(EDivertConditionAllConditionalCases == - mWrapper->m_Priv->convert(DivertConditionAllConditionalCases)); -} - -/*! - UT_PSetCallDivertingWrapper::t_convertPsCallDivertingStatus - */ -void UT_PSetCallDivertingWrapper::t_convertPsCallDivertingStatus() -{ - QVERIFY(EDivertingStatusActive == - mWrapper->m_Priv->convert(DivertingStatusActive)); - QVERIFY(EDivertingStatusInactive == - mWrapper->m_Priv->convert(DivertingStatusInactive)); - QVERIFY(EDivertingStatusNotRegistered == - mWrapper->m_Priv->convert(DivertingStatusNotRegistered)); - QVERIFY(EDivertingStatusNotProvisioned == - mWrapper->m_Priv->convert(DivertingStatusNotProvisioned)); -} - -/*! - UT_PSetCallDivertingWrapper::t_convertPsCallDivertingSetting - */ -void UT_PSetCallDivertingWrapper::t_convertPsCallDivertingSetting() -{ - QVERIFY(EActivateDiverting == - mWrapper->m_Priv->convert(ActivateDiverting)); - QVERIFY(ECancelDiverting == - mWrapper->m_Priv->convert(CancelDiverting)); - QVERIFY(ERegisterDiverting == - mWrapper->m_Priv->convert(RegisterDiverting)); - QVERIFY(EEraseDiverting == - mWrapper->m_Priv->convert(EraseDiverting)); - QVERIFY(ECheckStatus == - mWrapper->m_Priv->convert(CheckStatus)); - const int invalidEnumeration = -1; - QVERIFY(ECheckStatus == mWrapper->m_Priv->convert( - static_cast(invalidEnumeration))); -} - -/*! - UT_PSetCallDivertingWrapper::t_exceptionSafety - */ -void UT_PSetCallDivertingWrapper::t_exceptionSafety() -{ - cleanup(); - - OomTestExecuter::runAllTests(*this, "t_exceptionSafety"); -} - -/*! - UT_PSetCallDivertingWrapper::simulateLeaveOnMockMethodCallL - */ -void UT_PSetCallDivertingWrapper::simulateLeaveOnMockMethodCallL() -{ - User::Leave(KErrGeneral); -} - -QTEST_MAIN_S60(UT_PSetCallDivertingWrapper)