538 ASSERT_EQUALS(KErrNone, errorCode); |
537 ASSERT_EQUALS(KErrNone, errorCode); |
539 CleanupClosePushL(call); |
538 CleanupClosePushL(call); |
540 |
539 |
541 TRequestStatus requestStatus; |
540 TRequestStatus requestStatus; |
542 _LIT(KSomeNumber, "123456789"); |
541 _LIT(KSomeNumber, "123456789"); |
543 _LIT(KAlphaID, "Alpha ID"); |
|
544 |
542 |
545 RMobilePhone::TMobileService mobileService = RMobilePhone::EVoiceService; |
543 RMobilePhone::TMobileService mobileService = RMobilePhone::EVoiceService; |
546 TInt expecteCallId = 0; |
544 TInt expecteCallId = 0; |
547 |
545 |
548 RMobileCall::TMobileCallParamsV7 callParams; |
546 RMobileCall::TMobileCallParamsV1 callParams; |
549 RMobileCall::TMobileCallParamsV7Pckg pckgCallParams(callParams); |
547 RMobileCall::TMobileCallParamsV1Pckg pckgCallParams(callParams); |
550 RMobileCall::TMobileCallInfoV8 callInfo; |
548 RMobileCall::TMobileCallInfoV8 callInfo; |
551 callParams.iSpeakerControl = RCall::EMonitorSpeakerControlOnUntilCarrier; |
549 callParams.iSpeakerControl = RCall::EMonitorSpeakerControlOnUntilCarrier; |
552 callParams.iSpeakerVolume = RCall::EMonitorSpeakerVolumeLow; |
550 callParams.iSpeakerVolume = RCall::EMonitorSpeakerVolumeLow; |
553 callParams.iInterval = 100; |
551 callParams.iInterval = 100; |
554 callParams.iWaitForDialTone = RCall::EDialToneWait; |
552 callParams.iWaitForDialTone = RCall::EDialToneWait; |
555 callParams.iIdRestrict = RMobileCall::EIdRestrictDefault; |
553 callParams.iIdRestrict = RMobileCall::EIdRestrictDefault; |
556 callParams.iCug.iExplicitInvoke = EFalse; |
554 callParams.iCug.iExplicitInvoke = EFalse; |
557 callParams.iCug.iCugIndex = 0xFFFF; |
555 callParams.iCug.iCugIndex = 0xFFFF; |
558 callParams.iCug.iSuppressPrefCug = EFalse; |
556 callParams.iCug.iSuppressPrefCug = EFalse; |
559 callParams.iCug.iSuppressOA = EFalse; |
557 callParams.iCug.iSuppressOA = EFalse; |
560 |
|
561 callParams.iAutoRedial = EFalse; |
558 callParams.iAutoRedial = EFalse; |
562 callParams.iBearerMode = RMobileCall::EMulticallNewBearer; |
|
563 callParams.iCallParamOrigin = RMobileCall::EOriginatorSIM; |
|
564 callParams.iBCRepeatIndicator = RMobileCall::EBCAlternateMode; |
|
565 callParams.iIconId.iQualifier = RMobileCall::ENoIconId; |
|
566 callParams.iAlphaId = KAlphaID; |
|
567 |
|
568 |
|
569 |
|
570 |
|
571 callInfo.iValid = RMobileCall::KCallDialledParty | RMobileCall::KCallAlternating; |
559 callInfo.iValid = RMobileCall::KCallDialledParty | RMobileCall::KCallAlternating; |
572 callInfo.iService = mobileService; |
560 callInfo.iService = mobileService; |
573 callInfo.iStatus = RMobileCall::EStatusUnknown; |
561 callInfo.iStatus = RMobileCall::EStatusUnknown; |
574 callInfo.iCallId =-1; |
562 callInfo.iCallId =-1; |
575 callInfo.iExitCode =0; |
563 callInfo.iExitCode =0; |
609 callParamsX.iSpeakerVolume = RCall::EMonitorSpeakerVolumeLow; |
597 callParamsX.iSpeakerVolume = RCall::EMonitorSpeakerVolumeLow; |
610 callParamsX.iInterval = 100; |
598 callParamsX.iInterval = 100; |
611 callParamsX.iWaitForDialTone = RCall::EDialToneWait; |
599 callParamsX.iWaitForDialTone = RCall::EDialToneWait; |
612 TPckg<RCall::TCallParams> pckgCallParamsX(callParamsX); |
600 TPckg<RCall::TCallParams> pckgCallParamsX(callParamsX); |
613 |
601 |
614 |
602 call.DialNoFdnCheck(requestStatus, pckgCallParamsX, KSomeNumber); |
615 TPckg<RMobileCall::TMobileCallParamsV7> mmParamsPckgV7(callParams); |
|
616 call.DialNoFdnCheck(requestStatus, mmParamsPckgV7, KSomeNumber); |
|
617 |
603 |
618 User::WaitForRequest(requestStatus); |
604 User::WaitForRequest(requestStatus); |
619 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
605 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
620 AssertMockLtsyStatusL(); |
606 AssertMockLtsyStatusL(); |
621 |
|
622 RMobileCall::TMobileCallInfoV7 info; |
|
623 RMobileCall::TMobileCallInfoV7Pckg infoPckg(info); |
|
624 |
|
625 TInt ret = call.GetMobileCallInfo(infoPckg); |
|
626 ASSERT_EQUALS(KErrNone, ret); |
|
627 |
|
628 ASSERT_TRUE(info.iAlphaId.Compare(KAlphaID)==KErrNone); |
|
629 |
|
630 CleanupStack::PopAndDestroy(5,this); |
|
631 |
|
632 } |
|
633 |
|
634 /** |
|
635 @SYMTestCaseID BA-CTSY-FXD-CDNFC-0001d |
|
636 @SYMComponent telephony_ctsy |
|
637 @SYMTestCaseDesc Test support in CTSY for RMobileCall::DialNoFdnCheck for voice calls with extended parameters (RMobileCall::TCallParamsV7) |
|
638 @SYMTestPriority High |
|
639 @SYMTestActions Invokes RMobileCall::DialNoFdnCheck for voice calls |
|
640 @SYMTestExpectedResults Pass |
|
641 @SYMTestType CT |
|
642 */ |
|
643 void CCTsyFixedDiallingFU::TestDialNoFdnCheck0001dL() |
|
644 { |
|
645 |
|
646 OpenEtelServerL(EUseExtendedError); |
|
647 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
648 OpenPhoneL(); |
|
649 |
|
650 RBuf8 expectData; |
|
651 CleanupClosePushL(expectData); |
|
652 |
|
653 RBuf8 completeData; |
|
654 CleanupClosePushL(completeData); |
|
655 |
|
656 TInt errorCode = KErrNone; |
|
657 |
|
658 //-- For Voice1 ------------------------- |
|
659 |
|
660 TBuf<256> lineName(KMmTsyVoice1LineName); |
|
661 // Open new line |
|
662 RLine line; |
|
663 errorCode = line.Open(iPhone, lineName); |
|
664 ASSERT_EQUALS(KErrNone, errorCode); |
|
665 CleanupClosePushL(line); |
|
666 // open call |
|
667 _LIT(KDoubleColon, "::"); |
|
668 TBuf<256> name; |
|
669 name = KMmTsyPhoneName; |
|
670 name.Append(KDoubleColon); |
|
671 name.Append(lineName); |
|
672 name.Append(KDoubleColon); |
|
673 |
|
674 RMobileCall call; |
|
675 errorCode = call.OpenNewCall(line, name); |
|
676 ASSERT_EQUALS(KErrNone, errorCode); |
|
677 CleanupClosePushL(call); |
|
678 |
|
679 TRequestStatus requestStatus; |
|
680 _LIT(KSomeNumber, "123456789"); |
|
681 // Alpha ID to pass through TMobileCallParamsV7 |
|
682 _LIT(KAlphaID, "Alpha ID"); |
|
683 |
|
684 RMobilePhone::TMobileService mobileService = RMobilePhone::EVoiceService; |
|
685 TInt expecteCallId = 0; |
|
686 |
|
687 RMobileCall::TMobileCallParamsV7 callParams; |
|
688 RMobileCall::TMobileCallParamsV7Pckg pckgCallParams(callParams); |
|
689 callParams.iSpeakerControl = RCall::EMonitorSpeakerControlOnUntilCarrier; |
|
690 callParams.iSpeakerVolume = RCall::EMonitorSpeakerVolumeLow; |
|
691 callParams.iInterval = 100; |
|
692 callParams.iWaitForDialTone = RCall::EDialToneWait; |
|
693 callParams.iIdRestrict = RMobileCall::EIdRestrictDefault; |
|
694 callParams.iCug.iExplicitInvoke = EFalse; |
|
695 callParams.iCug.iCugIndex = 0xFFFF; |
|
696 callParams.iCug.iSuppressPrefCug = EFalse; |
|
697 callParams.iCug.iSuppressOA = EFalse; |
|
698 |
|
699 callParams.iAutoRedial = EFalse; |
|
700 callParams.iBearerMode = RMobileCall::EMulticallNewBearer; |
|
701 callParams.iCallParamOrigin = RMobileCall::EOriginatorSIM; |
|
702 callParams.iBCRepeatIndicator = RMobileCall::EBCAlternateMode; |
|
703 callParams.iIconId.iQualifier = RMobileCall::ENoIconId; |
|
704 callParams.iIconId.iIdentifier = 123; |
|
705 callParams.iAlphaId = KAlphaID; |
|
706 |
|
707 // Create the basic TMobileCallInfoV3 object to pass back |
|
708 RMobileCall::TMobileCallInfoV8 callInfo; |
|
709 callInfo.iValid = RMobileCall::KCallDialledParty | RMobileCall::KCallAlternating; |
|
710 callInfo.iService = mobileService; |
|
711 callInfo.iStatus = RMobileCall::EStatusUnknown; |
|
712 callInfo.iCallId =-1; |
|
713 callInfo.iExitCode =0; |
|
714 callInfo.iEmergency =0; |
|
715 callInfo.iForwarded =0; |
|
716 callInfo.iPrivacy = RMobilePhone::EPrivacyUnspecified; |
|
717 callInfo.iAlternatingCall = RMobilePhone::EAlternatingModeUnspecified; |
|
718 //callInfo.iDuration.iIntervel = 0; // this is protected value |
|
719 callInfo.iDialledParty.iTelNumber.Copy( KSomeNumber ); |
|
720 callInfo.iDialledParty.iNumberPlan = |
|
721 RMobilePhone::EUnknownNumberingPlan; |
|
722 callInfo.iDialledParty.iTypeOfNumber = |
|
723 RMobilePhone::EUnknownNumber; |
|
724 |
|
725 TMockLtsyCallData2< RMobileCall::TMobileCallParamsV7, RMobileCall::TMobileCallInfoV8 > |
|
726 mockCallData(expecteCallId, mobileService, callParams, callInfo); |
|
727 mockCallData.SerialiseL(expectData); |
|
728 |
|
729 iMockLTSY.ExpectL(EMobileCallDialNoFdnCheck, expectData); |
|
730 |
|
731 TInt callId = 1; |
|
732 |
|
733 completeData.Close(); |
|
734 TMockLtsyCallData1<RMobileCall::TMobileCallInfoV1> callInfoData(callId, mobileService, callInfo); |
|
735 callInfoData.SerialiseL(completeData); |
|
736 //Complete Mobile Call Info in order to set the call ID |
|
737 iMockLTSY.CompleteL(EMobileCallGetMobileCallInfo, KErrNone, completeData); |
|
738 |
|
739 TMockLtsyCallData0 mockDataComplete(callId, mobileService); |
|
740 completeData.Close(); |
|
741 mockDataComplete.SerialiseL(completeData); |
|
742 // Complete the Dial |
|
743 iMockLTSY.CompleteL(EMobileCallDialNoFdnCheck, KErrNone, completeData); |
|
744 |
|
745 TPckg<RMobileCall::TMobileCallParamsV7> mmParamsPckgV7(callParams); |
|
746 call.DialNoFdnCheck(requestStatus, mmParamsPckgV7, KSomeNumber); |
|
747 |
|
748 User::WaitForRequest(requestStatus); |
|
749 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
|
750 AssertMockLtsyStatusL(); |
|
751 |
|
752 RMobileCall::TMobileCallInfoV7 info; |
|
753 RMobileCall::TMobileCallInfoV7Pckg infoPckg(info); |
|
754 |
|
755 TInt ret = call.GetMobileCallInfo(infoPckg); |
|
756 ASSERT_EQUALS(KErrNone, ret); |
|
757 |
|
758 // The check to make sure that the AlphaID persisted in CTSY and returned properly. |
|
759 ASSERT_TRUE(info.iAlphaId.Compare(KAlphaID)==KErrNone); |
|
760 // The check to make sure that the IconID persisted in CTSY and returned properly. |
|
761 ASSERT_TRUE(info.iIconId.iIdentifier == 123); |
|
762 ASSERT_EQUALS(info.iIconId.iQualifier, RMobileCall::ENoIconId); |
|
763 |
607 |
764 CleanupStack::PopAndDestroy(5,this); |
608 CleanupStack::PopAndDestroy(5,this); |
765 |
609 |
766 } |
610 } |
767 |
611 |