|
1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
2 // All rights reserved. |
|
3 // This component and the accompanying materials are made available |
|
4 // under the terms of "Eclipse Public License v1.0" |
|
5 // which accompanies this distribution, and is available |
|
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
7 // |
|
8 // Initial Contributors: |
|
9 // Nokia Corporation - initial contribution. |
|
10 // |
|
11 // Contributors: |
|
12 // |
|
13 // Description: |
|
14 // The TEFUnit test suite for MultimediaCallControl in the Common TSY. |
|
15 // |
|
16 // |
|
17 |
|
18 /** |
|
19 @file |
|
20 */ |
|
21 |
|
22 #include "cctsymultimediacallcontrolfu.h" |
|
23 #include <etel.h> |
|
24 #include <etelmm.h> |
|
25 #include <et_clsvr.h> |
|
26 #include <ctsy/mmtsy_names.h> |
|
27 #include <ctsy/serviceapi/mmtsy_ipcdefs.h> |
|
28 #include "tmockltsydata.h" |
|
29 #include <ctsy/serviceapi/gsmerror.h> |
|
30 |
|
31 CTestSuite* CCTsyMultimediaCallControlFU::CreateSuiteL(const TDesC& aName) |
|
32 { |
|
33 SUB_SUITE; |
|
34 |
|
35 ADD_TEST_STEP_ISO_CPP(CCTsyMultimediaCallControlFU, TestNotifyCallPreferenceChange0001L); |
|
36 ADD_TEST_STEP_ISO_CPP(CCTsyMultimediaCallControlFU, TestAnswerMultimediaCallAsVoice0001L); |
|
37 ADD_TEST_STEP_ISO_CPP(CCTsyMultimediaCallControlFU, TestAnswerMultimediaCallAsVoice0002L); |
|
38 ADD_TEST_STEP_ISO_CPP(CCTsyMultimediaCallControlFU, TestAnswerMultimediaCallAsVoice0003L); |
|
39 ADD_TEST_STEP_ISO_CPP(CCTsyMultimediaCallControlFU, TestGetMultimediaCallPreference0001L); |
|
40 ADD_TEST_STEP_ISO_CPP(CCTsyMultimediaCallControlFU, TestSetMultimediaCallPreference0001L); |
|
41 |
|
42 END_SUITE; |
|
43 } |
|
44 |
|
45 |
|
46 // |
|
47 // Actual test cases |
|
48 // |
|
49 |
|
50 |
|
51 /** |
|
52 @SYMTestCaseID BA-CTSY-MMCC-MNMCPC-0001 |
|
53 @SYMComponent telephony_ctsy |
|
54 @SYMTestCaseDesc Test support in CTSY for RMobilePhone::NotifyMultimediaCallPreferenceChange |
|
55 @SYMTestPriority High |
|
56 @SYMTestActions Invokes RMobilePhone::NotifyMultimediaCallPreferenceChange |
|
57 @SYMTestExpectedResults Pass |
|
58 @SYMTestType CT |
|
59 */ |
|
60 void CCTsyMultimediaCallControlFU::TestNotifyCallPreferenceChange0001L() |
|
61 { |
|
62 |
|
63 OpenEtelServerL(EUseExtendedError); |
|
64 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
65 OpenPhoneL(); |
|
66 |
|
67 TRequestStatus reqStatus; |
|
68 RMobilePhone::TMobilePhoneMultimediaSettings |
|
69 mmSettings(RMobilePhone::EAcceptMMCallsVoiceFallback); |
|
70 iPhone.NotifyMultimediaCallPreferenceChange(reqStatus, mmSettings); |
|
71 User::WaitForRequest(reqStatus); |
|
72 ASSERT_EQUALS(KErrNotSupported, reqStatus.Int()); |
|
73 |
|
74 AssertMockLtsyStatusL(); |
|
75 CleanupStack::PopAndDestroy(this); |
|
76 |
|
77 } |
|
78 |
|
79 |
|
80 /** |
|
81 @SYMTestCaseID BA-CTSY-MMCC-MAMCAV-0001 |
|
82 @SYMComponent telephony_ctsy |
|
83 @SYMTestCaseDesc Test support in CTSY for RMobileCall::AnswerMultimediaCallAsVoice for voice calls |
|
84 @SYMTestPriority High |
|
85 @SYMTestActions Invokes RMobileCall::AnswerMultimediaCallAsVoice for voice calls |
|
86 @SYMTestExpectedResults Pass |
|
87 @SYMTestType CT |
|
88 */ |
|
89 void CCTsyMultimediaCallControlFU::TestAnswerMultimediaCallAsVoice0001L() |
|
90 { |
|
91 |
|
92 OpenEtelServerL(EUseExtendedError); |
|
93 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
94 OpenPhoneL(); |
|
95 |
|
96 RMobileCall mobileCall; |
|
97 RLine line; |
|
98 |
|
99 TInt err = line.Open(iPhone, KMmTsyVoice1LineName); |
|
100 ASSERT_EQUALS(KErrNone, err) |
|
101 CleanupClosePushL(line); |
|
102 |
|
103 err = OpenNewCall(line, mobileCall, KMmTsyVoice1LineName); |
|
104 ASSERT_EQUALS(KErrNone, err) |
|
105 CleanupClosePushL(mobileCall); |
|
106 |
|
107 TRequestStatus reqStatus; |
|
108 TName callName; |
|
109 TBuf8<1> callParams; |
|
110 mobileCall.AnswerMultimediaCallAsVoice(reqStatus, callParams, callName); |
|
111 User::WaitForRequest(reqStatus); |
|
112 ASSERT_EQUALS(KErrNotSupported, reqStatus.Int()); |
|
113 |
|
114 AssertMockLtsyStatusL(); |
|
115 CleanupStack::PopAndDestroy(2); // mobileCall, line |
|
116 |
|
117 err = line.Open(iPhone, KMmTsyVoice2LineName); |
|
118 ASSERT_EQUALS(KErrNone, err) |
|
119 CleanupClosePushL(line); |
|
120 |
|
121 err = OpenNewCall(line, mobileCall, KMmTsyVoice2LineName); |
|
122 ASSERT_EQUALS(KErrNone, err) |
|
123 CleanupClosePushL(mobileCall); |
|
124 |
|
125 mobileCall.AnswerMultimediaCallAsVoice(reqStatus, callParams, callName); |
|
126 User::WaitForRequest(reqStatus); |
|
127 ASSERT_EQUALS(KErrNotSupported, reqStatus.Int()); |
|
128 |
|
129 AssertMockLtsyStatusL(); |
|
130 CleanupStack::PopAndDestroy(2); // mobileCall, line |
|
131 CleanupStack::PopAndDestroy(this); |
|
132 |
|
133 } |
|
134 |
|
135 |
|
136 /** |
|
137 @SYMTestCaseID BA-CTSY-MMCC-MAMCAV-0002 |
|
138 @SYMComponent telephony_ctsy |
|
139 @SYMTestCaseDesc Test support in CTSY for RMobileCall::AnswerMultimediaCallAsVoice for data calls |
|
140 @SYMTestPriority High |
|
141 @SYMTestActions Invokes RMobileCall::AnswerMultimediaCallAsVoice for data calls |
|
142 @SYMTestExpectedResults Pass |
|
143 @SYMTestType CT |
|
144 */ |
|
145 void CCTsyMultimediaCallControlFU::TestAnswerMultimediaCallAsVoice0002L() |
|
146 { |
|
147 |
|
148 OpenEtelServerL(EUseExtendedError); |
|
149 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
150 OpenPhoneL(); |
|
151 |
|
152 RMobileCall mobileCall; |
|
153 RLine line; |
|
154 |
|
155 TInt err = line.Open(iPhone, KMmTsyDataLineName); |
|
156 ASSERT_EQUALS(KErrNone, err) |
|
157 CleanupClosePushL(line); |
|
158 |
|
159 err = OpenNewCall(line, mobileCall, KMmTsyDataLineName); |
|
160 ASSERT_EQUALS(KErrNone, err) |
|
161 CleanupClosePushL(mobileCall); |
|
162 |
|
163 TRequestStatus reqStatus; |
|
164 TName callName; |
|
165 TBuf8<1> callParams; |
|
166 mobileCall.AnswerMultimediaCallAsVoice(reqStatus, callParams, callName); |
|
167 User::WaitForRequest(reqStatus); |
|
168 ASSERT_EQUALS(KErrNotSupported, reqStatus.Int()); |
|
169 |
|
170 AssertMockLtsyStatusL(); |
|
171 CleanupStack::PopAndDestroy(2); // mobileCall, line |
|
172 CleanupStack::PopAndDestroy(this); |
|
173 |
|
174 } |
|
175 |
|
176 |
|
177 /** |
|
178 @SYMTestCaseID BA-CTSY-MMCC-MAMCAV-0003 |
|
179 @SYMComponent telephony_ctsy |
|
180 @SYMTestCaseDesc Test support in CTSY for RMobileCall::AnswerMultimediaCallAsVoice for fax calls |
|
181 @SYMTestPriority High |
|
182 @SYMTestActions Invokes RMobileCall::AnswerMultimediaCallAsVoice for fax calls |
|
183 @SYMTestExpectedResults Pass |
|
184 @SYMTestType CT |
|
185 */ |
|
186 void CCTsyMultimediaCallControlFU::TestAnswerMultimediaCallAsVoice0003L() |
|
187 { |
|
188 |
|
189 OpenEtelServerL(EUseExtendedError); |
|
190 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
191 OpenPhoneL(); |
|
192 |
|
193 RMobileCall mobileCall; |
|
194 RLine line; |
|
195 |
|
196 TInt err = line.Open(iPhone, KMmTsyFaxLineName); |
|
197 ASSERT_EQUALS(KErrNone, err) |
|
198 CleanupClosePushL(line); |
|
199 |
|
200 err = OpenNewCall(line, mobileCall, KMmTsyFaxLineName); |
|
201 ASSERT_EQUALS(KErrNone, err) |
|
202 CleanupClosePushL(mobileCall); |
|
203 |
|
204 TRequestStatus reqStatus; |
|
205 TName callName; |
|
206 TBuf8<1> callParams; |
|
207 mobileCall.AnswerMultimediaCallAsVoice(reqStatus, callParams, callName); |
|
208 User::WaitForRequest(reqStatus); |
|
209 ASSERT_EQUALS(KErrNotSupported, reqStatus.Int()); |
|
210 |
|
211 AssertMockLtsyStatusL(); |
|
212 CleanupStack::PopAndDestroy(2); // mobileCall, line |
|
213 CleanupStack::PopAndDestroy(this); |
|
214 |
|
215 } |
|
216 |
|
217 |
|
218 /** |
|
219 @SYMTestCaseID BA-CTSY-MMCC-MGMCP-0001 |
|
220 @SYMComponent telephony_ctsy |
|
221 @SYMTestCaseDesc Test support in CTSY for RMobilePhone::GetMultimediaCallPreference |
|
222 @SYMTestPriority High |
|
223 @SYMTestActions Invokes RMobilePhone::GetMultimediaCallPreference |
|
224 @SYMTestExpectedResults Pass |
|
225 @SYMTestType CT |
|
226 */ |
|
227 void CCTsyMultimediaCallControlFU::TestGetMultimediaCallPreference0001L() |
|
228 { |
|
229 |
|
230 OpenEtelServerL(EUseExtendedError); |
|
231 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
232 OpenPhoneL(); |
|
233 |
|
234 RMobilePhone::TMobilePhoneMultimediaSettings |
|
235 mmSettings(RMobilePhone::EAcceptMMCallsVoiceFallback); |
|
236 TInt ret = iPhone.GetMultimediaCallPreference(mmSettings); |
|
237 ASSERT_EQUALS(KErrNotSupported, ret); |
|
238 |
|
239 AssertMockLtsyStatusL(); |
|
240 CleanupStack::PopAndDestroy(this); |
|
241 |
|
242 } |
|
243 |
|
244 |
|
245 /** |
|
246 @SYMTestCaseID BA-CTSY-MMCC-MSMCP-0001 |
|
247 @SYMComponent telephony_ctsy |
|
248 @SYMTestCaseDesc Test support in CTSY for RMobilePhone::SetMultimediaCallPreference |
|
249 @SYMTestPriority High |
|
250 @SYMTestActions Invokes RMobilePhone::SetMultimediaCallPreference |
|
251 @SYMTestExpectedResults Pass |
|
252 @SYMTestType CT |
|
253 */ |
|
254 void CCTsyMultimediaCallControlFU::TestSetMultimediaCallPreference0001L() |
|
255 { |
|
256 |
|
257 OpenEtelServerL(EUseExtendedError); |
|
258 CleanupStack::PushL(TCleanupItem(Cleanup,this)); |
|
259 OpenPhoneL(); |
|
260 |
|
261 TRequestStatus reqStatus; |
|
262 RMobilePhone::TMobilePhoneMultimediaSettings |
|
263 mmSettings(RMobilePhone::EAcceptMMCallsVoiceFallback); |
|
264 iPhone.SetMultimediaCallPreference(reqStatus, mmSettings); |
|
265 User::WaitForRequest(reqStatus); |
|
266 ASSERT_EQUALS(KErrNotSupported, reqStatus.Int()); |
|
267 |
|
268 AssertMockLtsyStatusL(); |
|
269 CleanupStack::PopAndDestroy(this); |
|
270 |
|
271 } |
|
272 |
|
273 |
|
274 |