43 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall0008L); |
43 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall0008L); |
44 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall0009L); |
44 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall0009L); |
45 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall00010L); |
45 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall00010L); |
46 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall00011L); |
46 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestAnswerIncomingCall00011L); |
47 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0001L); |
47 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0001L); |
48 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0001bL); |
48 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0001bL); |
|
49 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0001cL); |
49 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0002L); |
50 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0002L); |
50 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0003L); |
51 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0003L); |
51 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0004L); |
52 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0004L); |
52 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0005L); |
53 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0005L); |
53 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0006L); |
54 ADD_TEST_STEP_ISO_CPP(CCTsyCallControlFU, TestDial0006L); |
1914 callParamsX.iInterval = 100; |
1915 callParamsX.iInterval = 100; |
1915 callParamsX.iWaitForDialTone = RCall::EDialToneWait; |
1916 callParamsX.iWaitForDialTone = RCall::EDialToneWait; |
1916 TPckg<RCall::TCallParams> pckgCallParamsX(callParamsX); |
1917 TPckg<RCall::TCallParams> pckgCallParamsX(callParamsX); |
1917 |
1918 |
1918 call.Dial(requestStatus, pckgCallParamsX, KSomeNumber); |
1919 call.Dial(requestStatus, pckgCallParamsX, KSomeNumber); |
|
1920 |
|
1921 User::WaitForRequest(requestStatus); |
|
1922 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
|
1923 AssertMockLtsyStatusL(); |
|
1924 |
|
1925 CleanupStack::PopAndDestroy(5,this); |
|
1926 |
|
1927 } |
|
1928 |
|
1929 |
|
1930 /** |
|
1931 @SYMTestCaseID BA-CTSY-CCON-CD-0001c |
|
1932 @SYMComponent telephony_ctsy |
|
1933 @SYMTestCaseDesc Test support in CTSY for RCall::Dial for voice calls with changing parameters |
|
1934 @SYMTestPriority High |
|
1935 @SYMTestActions Invokes RCall::Dial for voice calls |
|
1936 @SYMTestExpectedResults Pass |
|
1937 @SYMTestType CT |
|
1938 */ |
|
1939 void CCTsyCallControlFU::TestDial0001cL() |
|
1940 { |
|
1941 |
|
1942 OpenEtelServerL(EUseExtendedError); |
|
1943 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
1944 OpenPhoneL(); |
|
1945 |
|
1946 RBuf8 expectData; |
|
1947 CleanupClosePushL(expectData); |
|
1948 |
|
1949 RBuf8 completeData; |
|
1950 CleanupClosePushL(completeData); |
|
1951 |
|
1952 TInt errorCode = KErrNone; |
|
1953 |
|
1954 //-- For Voice1 ------------------------- |
|
1955 |
|
1956 TBuf<256> lineName(KMmTsyVoice1LineName); |
|
1957 // Open new line |
|
1958 RLine line; |
|
1959 errorCode = line.Open(iPhone, lineName); |
|
1960 ASSERT_EQUALS(KErrNone, errorCode); |
|
1961 CleanupClosePushL(line); |
|
1962 // open call |
|
1963 _LIT(KDoubleColon, "::"); |
|
1964 TBuf<256> name; |
|
1965 name = KMmTsyPhoneName; |
|
1966 name.Append(KDoubleColon); |
|
1967 name.Append(lineName); |
|
1968 name.Append(KDoubleColon); |
|
1969 |
|
1970 RMobileCall call; |
|
1971 errorCode = call.OpenNewCall(line, name); |
|
1972 ASSERT_EQUALS(KErrNone, errorCode); |
|
1973 CleanupClosePushL(call); |
|
1974 |
|
1975 TRequestStatus requestStatus; |
|
1976 _LIT(KSomeNumber, "123456789"); |
|
1977 |
|
1978 RMobilePhone::TMobileService mobileService = RMobilePhone::EVoiceService; |
|
1979 TInt expectedCallId = 0; |
|
1980 RMobileCall::TMobileCallInfoV8 callInfo; |
|
1981 callInfo.iValid = RMobileCall::KCallDialledParty | RMobileCall::KCallAlternating; |
|
1982 callInfo.iService = mobileService; |
|
1983 callInfo.iStatus = RMobileCall::EStatusUnknown; |
|
1984 callInfo.iCallId =-1; |
|
1985 callInfo.iExitCode =0; |
|
1986 callInfo.iEmergency =0; |
|
1987 callInfo.iForwarded =0; |
|
1988 callInfo.iPrivacy = RMobilePhone::EPrivacyUnspecified; |
|
1989 callInfo.iAlternatingCall = RMobilePhone::EAlternatingModeUnspecified; |
|
1990 callInfo.iDialledParty.iTelNumber.Copy( KSomeNumber ); |
|
1991 callInfo.iDialledParty.iNumberPlan = RMobilePhone::EUnknownNumberingPlan; |
|
1992 callInfo.iDialledParty.iTypeOfNumber = RMobilePhone::EUnknownNumber; |
|
1993 |
|
1994 // A. Call with V7 params. |
|
1995 // Fill the params with random values |
|
1996 RMobileCall::TMobileCallParamsV7 callParams; |
|
1997 RMobileCall::TMobileCallParamsV7Pckg pckgCallParams(callParams); |
|
1998 callParams.iAlphaId.Copy(_L("Alpha Id")); |
|
1999 callParams.iIconId.iQualifier = RMobileCall::ESelfExplanatory; |
|
2000 callParams.iIconId.iIdentifier = 0x0A; |
|
2001 callParams.iBCRepeatIndicator = RMobileCall::EBCServiceChangeAndFallbackMode; |
|
2002 callParams.iBearerCap2.Copy(_L("Cap2")); |
|
2003 callParams.iBearerCap1.Copy(_L("Cap1")); |
|
2004 callParams.iSubAddress.Copy(_L("SubAddress")); |
|
2005 callParams.iCallParamOrigin = RMobileCall::EOriginatorEtelClient; |
|
2006 callParams.iBearerMode = RMobileCall::EMulticallShareBearer; |
|
2007 callParams.iIdRestrict = RMobileCall::EDontSendMyId; |
|
2008 callParams.iCug.iExplicitInvoke = EFalse; |
|
2009 callParams.iCug.iCugIndex = 0xAABB; |
|
2010 callParams.iCug.iSuppressPrefCug = EFalse; |
|
2011 callParams.iCug.iSuppressOA = ETrue; |
|
2012 callParams.iAutoRedial = ETrue; |
|
2013 callParams.iSpeakerControl = RCall::EMonitorSpeakerControlOnUntilCarrier; |
|
2014 callParams.iSpeakerVolume = RCall::EMonitorSpeakerVolumeLow; |
|
2015 callParams.iInterval = 0; |
|
2016 callParams.iWaitForDialTone = RCall::EDialToneWait; |
|
2017 |
|
2018 TMockLtsyCallData2< RMobileCall::TMobileCallParamsV7, RMobileCall::TMobileCallInfoV8 > |
|
2019 mockCallData(expectedCallId, mobileService, callParams, callInfo); |
|
2020 mockCallData.SerialiseL(expectData); |
|
2021 |
|
2022 iMockLTSY.ExpectL(EEtelCallDial, expectData); |
|
2023 |
|
2024 TInt callId = 1; |
|
2025 |
|
2026 completeData.Close(); |
|
2027 TMockLtsyCallData1<RMobileCall::TMobileCallInfoV1> callInfoData(callId, mobileService, callInfo); |
|
2028 callInfoData.SerialiseL(completeData); |
|
2029 //Complete Mobile Call Info in order to set the call ID |
|
2030 iMockLTSY.CompleteL(EMobileCallGetMobileCallInfo, KErrNone, completeData); |
|
2031 |
|
2032 TMockLtsyCallData0 mockDataComplete(callId, mobileService); |
|
2033 completeData.Close(); |
|
2034 mockDataComplete.SerialiseL(completeData); |
|
2035 // Complete the Dial |
|
2036 iMockLTSY.CompleteL(EEtelCallDial, KErrNone, completeData); |
|
2037 |
|
2038 call.Dial(requestStatus, pckgCallParams, KSomeNumber); |
|
2039 |
|
2040 User::WaitForRequest(requestStatus); |
|
2041 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
|
2042 AssertMockLtsyStatusL(); |
|
2043 |
|
2044 // B. Call with V0 params. |
|
2045 // The CTSY should send the default V7 values to the LTSY, and not the previous call parameters which are irrelevant. |
|
2046 // Fill the params with other random values. |
|
2047 callParams.iAlphaId.Zero(); |
|
2048 callParams.iIconId.iQualifier = RMobileCall::EIconQualifierNotSet; |
|
2049 callParams.iIconId.iIdentifier = 0x00; |
|
2050 callParams.iBCRepeatIndicator = RMobileCall::EBCAlternateMode; |
|
2051 callParams.iBearerCap2.Zero(); |
|
2052 callParams.iBearerCap1.Zero(); |
|
2053 callParams.iSubAddress.Zero(); |
|
2054 callParams.iCallParamOrigin = RMobileCall::EOriginatorUnknown; |
|
2055 callParams.iBearerMode = RMobileCall::EMulticallNotSupported; |
|
2056 callParams.iIdRestrict = RMobileCall::EIdRestrictDefault; |
|
2057 callParams.iCug.iExplicitInvoke = EFalse; |
|
2058 callParams.iCug.iCugIndex = 0xFFFF; |
|
2059 callParams.iCug.iSuppressPrefCug = EFalse; |
|
2060 callParams.iCug.iSuppressOA = EFalse; |
|
2061 callParams.iAutoRedial = EFalse; |
|
2062 callParams.iSpeakerControl = RCall::EMonitorSpeakerControlAlwaysOn; |
|
2063 callParams.iSpeakerVolume = RCall::EMonitorSpeakerVolumeMedium; |
|
2064 callParams.iInterval = 12; |
|
2065 callParams.iWaitForDialTone = RCall::EDialToneNoWait; |
|
2066 |
|
2067 |
|
2068 RMobileCall::TCallParams callParams0; |
|
2069 callParams0.iSpeakerControl = callParams.iSpeakerControl; |
|
2070 callParams0.iSpeakerVolume = callParams.iSpeakerVolume; |
|
2071 callParams0.iInterval = callParams.iInterval; |
|
2072 callParams0.iWaitForDialTone = callParams.iWaitForDialTone; |
|
2073 RCall::TCallParamsPckg pckgCallParams0(callParams0); |
|
2074 |
|
2075 expectData.Close(); |
|
2076 TMockLtsyCallData2< RMobileCall::TMobileCallParamsV7, RMobileCall::TMobileCallInfoV8 > |
|
2077 mockCallData2(1, mobileService, callParams, callInfo); |
|
2078 mockCallData2.SerialiseL(expectData); |
|
2079 |
|
2080 iMockLTSY.ExpectL(EEtelCallDial, expectData); |
|
2081 |
|
2082 |
|
2083 completeData.Close(); |
|
2084 callInfoData.SerialiseL(completeData); |
|
2085 //Complete Mobile Call Info in order to set the call ID |
|
2086 iMockLTSY.CompleteL(EMobileCallGetMobileCallInfo, KErrNone, completeData); |
|
2087 |
|
2088 completeData.Close(); |
|
2089 mockDataComplete.SerialiseL(completeData); |
|
2090 // Complete the Dial |
|
2091 iMockLTSY.CompleteL(EEtelCallDial, KErrNone, completeData); |
|
2092 |
|
2093 call.Dial(requestStatus, pckgCallParams0, KSomeNumber); |
1919 |
2094 |
1920 User::WaitForRequest(requestStatus); |
2095 User::WaitForRequest(requestStatus); |
1921 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
2096 ASSERT_EQUALS(KErrNone, requestStatus.Int()); |
1922 AssertMockLtsyStatusL(); |
2097 AssertMockLtsyStatusL(); |
1923 |
2098 |