telephonyserverplugins/common_tsy/test/component/src/cctsycallownershipfu.cpp
branchRCL_3
changeset 8 3f227a47ad75
parent 0 3553901f7fa8
equal deleted inserted replaced
7:fe8b59ab9fa0 8:3f227a47ad75
    36 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestLoanDataPort0007L);
    36 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestLoanDataPort0007L);
    37 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestLoanDataPort0008L);
    37 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestLoanDataPort0008L);
    38 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestLoanDataPort00011L);
    38 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestLoanDataPort00011L);
    39 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort0001L);
    39 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort0001L);
    40 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort0006L);
    40 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort0006L);
       
    41     ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort0007L);
    41 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort00011L);
    42 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestRecoverDataPort00011L);
    42 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0001L);
    43 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0001L);
    43 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0006L);
    44 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0006L);
    44 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0007L);
    45 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0007L);
    45 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0009L);
    46 	ADD_TEST_STEP_ISO_CPP(CCTsyCallOwnershipFU, TestAcquireOwnership0009L);
   719 	err = call2.OpenExistingCall(line2, callName);
   720 	err = call2.OpenExistingCall(line2, callName);
   720 	ASSERT_EQUALS(KErrNone, err)
   721 	ASSERT_EQUALS(KErrNone, err)
   721 	CleanupClosePushL(call2);
   722 	CleanupClosePushL(call2);
   722 
   723 
   723 	// test
   724 	// test
   724 	err = call.RecoverDataPort();
   725 	err = call2.RecoverDataPort();
   725 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 330203);
   726 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 330203);
   726 	// Request passes to MockLTSY as though the client owns the call.
   727 	// Request passes to MockLTSY as though the client owns the call.
   727 	// So MockLtsy returns KErrCorrupt because there is no expected IPC.
   728 	// So MockLtsy returns KErrCorrupt because there is no expected IPC.
   728 	ASSERT_EQUALS(KErrEtelNotCallOwner, err)
   729 	ASSERT_EQUALS(KErrEtelNotCallOwner, err)
   729 	AssertMockLtsyStatusL();
   730 	AssertMockLtsyStatusL();
       
   731 	
       
   732     iMockLTSY.ExpectL(EEtelCallRecoverDataPort, data);
       
   733 	err = call.RecoverDataPort();
       
   734     ASSERT_EQUALS(KErrNone, err)
   730 
   735 
   731 	CleanupStack::PopAndDestroy(8, this); // call2, line2, phone2, telServer2, call, line, data, this
   736 	CleanupStack::PopAndDestroy(8, this); // call2, line2, phone2, telServer2, call, line, data, this
   732 	
   737 	
   733 	}
   738 	}
       
   739 
       
   740 
       
   741 /**
       
   742 @SYMTestCaseID BA-CTSY-COWN-CRDP-0007
       
   743 @SYMComponent  telephony_ctsy
       
   744 @SYMTestCaseDesc Test support in CTSY for RCall::RecoverDataPort for data call when the call become idle
       
   745 @SYMTestPriority High
       
   746 @SYMTestActions Invokes RCall::RecoverDataPort for data calls
       
   747 @SYMTestExpectedResults Pass
       
   748 @SYMTestType CT
       
   749 */
       
   750 void CCTsyCallOwnershipFU::TestRecoverDataPort0007L()
       
   751     {
       
   752 
       
   753     OpenEtelServerL(EUseExtendedError);
       
   754     CleanupStack::PushL(TCleanupItem(Cleanup,this));
       
   755     OpenPhoneL();
       
   756 
       
   757     RBuf8 data;
       
   758     CleanupClosePushL(data);
       
   759     
       
   760     RCall call;
       
   761     RLine line;
       
   762 
       
   763     TInt err = line.Open(iPhone, KMmTsyDataLineName);
       
   764     ASSERT_EQUALS(KErrNone, err)
       
   765     CleanupClosePushL(line);
       
   766     
       
   767     TName callName;
       
   768     err = OpenNewCall(line, call, KMmTsyDataLineName, callName);
       
   769     ASSERT_EQUALS(KErrNone, err)
       
   770     CleanupClosePushL(call);
       
   771 
       
   772     const TInt KCallId( 1 );
       
   773     const RMobilePhone::TMobileService KMobileService( RMobilePhone::ECircuitDataService );
       
   774     DialL(call, KCallId, KMobileService);
       
   775 
       
   776     TRequestStatus mockLtsyStatus;
       
   777     iMockLTSY.NotifyTerminated(mockLtsyStatus);
       
   778     RMobilePhone::TMobileService mobileService = RMobilePhone::ECircuitDataService;
       
   779     RMobileCall::TMobileCallStatus mobileCallStatus = RMobileCall::EStatusConnected; 
       
   780     TMockLtsyCallData1<RMobileCall::TMobileCallStatus> mockData2(KCallId, 
       
   781                                                     mobileService, mobileCallStatus);
       
   782     data.Close();
       
   783     mockData2.SerialiseL(data);
       
   784     iMockLTSY.CompleteL(EMobileCallNotifyMobileCallStatusChange, KErrNone, data);
       
   785     User::WaitForRequest(mockLtsyStatus);
       
   786     
       
   787     RCall::TCommPort dataPort;
       
   788     dataPort.iCsy.Copy(_L("qwerty"));
       
   789     dataPort.iPort.Copy(_L("asdfgh"));
       
   790     TMockLtsyCallData1<RCall::TCommPort> expData(KCallId, KMobileService, dataPort);
       
   791     expData.SerialiseL(data);
       
   792     iMockLTSY.ExpectL(EEtelCallLoanDataPort, data);
       
   793     err = call.LoanDataPort(dataPort);
       
   794     ASSERT_EQUALS(KErrNone, err)
       
   795     AssertMockLtsyStatusL();
       
   796 
       
   797     //-------------------------------------------------------------------------
       
   798     // Make the call idle
       
   799     //-------------------------------------------------------------------------
       
   800     iMockLTSY.NotifyTerminated(mockLtsyStatus);
       
   801     
       
   802 
       
   803     TInt hangUpCause = KErrGsmReleaseByUser;
       
   804     TBool autoStChangeDisable = EFalse;
       
   805     TMockLtsyCallData2<TInt, TBool> mockData1(KCallId, mobileService, hangUpCause, 
       
   806                                              autoStChangeDisable);
       
   807     data.Close();
       
   808     mockData1.SerialiseL(data);                                               
       
   809     iMockLTSY.ExpectL(EEtelCallHangUp, data, KErrNone);                                              
       
   810     
       
   811     TRequestStatus reqStatus;
       
   812     call.HangUp(reqStatus);
       
   813         
       
   814     mobileCallStatus = RMobileCall::EStatusIdle; 
       
   815     TMockLtsyCallData1<RMobileCall::TMobileCallStatus> mockData3(KCallId, 
       
   816                                                     mobileService, mobileCallStatus);
       
   817     data.Close();
       
   818     mockData3.SerialiseL(data);
       
   819     iMockLTSY.CompleteL(EMobileCallNotifyMobileCallStatusChange, KErrGsmReleaseByUser, data);   
       
   820 
       
   821     data.Close();
       
   822     expData.SerialiseL(data);
       
   823 	
       
   824 	// Expect to RecoverDataPort from CTSY
       
   825     iMockLTSY.ExpectL(EEtelCallRecoverDataPort, data);
       
   826         
       
   827     User::WaitForRequest(reqStatus);
       
   828     ASSERT_EQUALS(KErrNone, reqStatus.Int());   
       
   829     User::WaitForRequest(mockLtsyStatus);
       
   830     ASSERT_EQUALS(KErrNone, mockLtsyStatus.Int());
       
   831 
       
   832     AssertMockLtsyStatusL();
       
   833     CleanupStack::PopAndDestroy(4, this); // call, line, data, this
       
   834     
       
   835     }
   734 
   836 
   735 
   837 
   736 /**
   838 /**
   737 @SYMTestCaseID BA-CTSY-COWN-CRDP-00011
   839 @SYMTestCaseID BA-CTSY-COWN-CRDP-00011
   738 @SYMComponent  telephony_ctsy
   840 @SYMComponent  telephony_ctsy