90 // |
90 // |
91 // ----------------------------------------------------------------------------- |
91 // ----------------------------------------------------------------------------- |
92 // |
92 // |
93 void UT_CMusPropertyMonitor::SetupL() |
93 void UT_CMusPropertyMonitor::SetupL() |
94 { |
94 { |
95 iMusPropertyMonitor = CMusPropertyMonitor::NewL(*this); |
95 iMusPropertyMonitor = CMusPropertyMonitor::NewL(); |
96 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ENoCall; |
96 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ENoCall; |
97 iMusCallStateObserverInovked = EFalse; |
|
98 } |
97 } |
99 |
98 |
100 |
99 |
101 // ----------------------------------------------------------------------------- |
100 // ----------------------------------------------------------------------------- |
102 // |
101 // |
107 delete iMusPropertyMonitor; |
106 delete iMusPropertyMonitor; |
108 PropertyHelper::Close(); |
107 PropertyHelper::Close(); |
109 } |
108 } |
110 |
109 |
111 |
110 |
|
111 |
|
112 |
|
113 |
|
114 |
112 // TEST CASES |
115 // TEST CASES |
113 |
116 |
114 // ----------------------------------------------------------------------------- |
117 // ----------------------------------------------------------------------------- |
115 // |
118 // |
116 // ----------------------------------------------------------------------------- |
119 // ----------------------------------------------------------------------------- |
117 // |
120 // |
118 void UT_CMusPropertyMonitor::UT_CMusPropertyMonitor_RunLL() |
121 void UT_CMusPropertyMonitor::UT_CMusPropertyMonitor_RunLL() |
119 { |
122 { |
120 EUNIT_ASSERT( iMusPropertyMonitor); |
123 EUNIT_ASSERT( iMusPropertyMonitor); |
121 EUNIT_ASSERT( !iMusCallStateObserverInovked ); |
124 EUNIT_ASSERT( !iMusPropertyMonitor->iManager ); |
|
125 |
122 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ENoCall; |
126 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ENoCall; |
123 iMusPropertyMonitor->Cancel(); |
127 iMusPropertyMonitor->Cancel(); |
124 iMusPropertyMonitor->RunL(); |
128 iMusPropertyMonitor->RunL(); |
125 EUNIT_ASSERT( iMusCallStateObserverInovked ); |
129 EUNIT_ASSERT( !iMusPropertyMonitor->iManager ); |
|
130 |
|
131 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ECallConnected; |
|
132 iMusPropertyMonitor->Cancel(); |
|
133 iMusPropertyMonitor->RunL(); |
|
134 EUNIT_ASSERT( iMusPropertyMonitor->iManager ); |
|
135 |
|
136 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::EConferenceTerminated; |
|
137 iMusPropertyMonitor->Cancel(); |
|
138 iMusPropertyMonitor->RunL(); |
|
139 EUNIT_ASSERT( iMusPropertyMonitor->iManager ); |
|
140 |
|
141 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ECallHold; |
|
142 iMusPropertyMonitor->Cancel(); |
|
143 iMusPropertyMonitor->RunL(); |
|
144 EUNIT_ASSERT( iMusPropertyMonitor->iManager ); |
|
145 |
|
146 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::EConferenceCall; |
|
147 iMusPropertyMonitor->Cancel(); |
|
148 iMusPropertyMonitor->RunL(); |
|
149 EUNIT_ASSERT( iMusPropertyMonitor->iManager ); |
|
150 |
|
151 iMusPropertyMonitor->iPropertyEvent.iPValue = NMusSessionInformationApi::ENoCall; |
|
152 iMusPropertyMonitor->Cancel(); |
|
153 iMusPropertyMonitor->RunL(); |
|
154 EUNIT_ASSERT( !iMusPropertyMonitor->iManager ); |
|
155 |
|
156 iMusPropertyMonitor->iPropertyEvent.iPValue = 555; |
|
157 iMusPropertyMonitor->Cancel(); |
|
158 iMusPropertyMonitor->RunL(); |
|
159 EUNIT_ASSERT( !iMusPropertyMonitor->iManager ); |
|
160 |
126 } |
161 } |
127 |
162 |
128 |
163 |
129 |
164 |
130 // ----------------------------------------------------------------------------- |
165 // ----------------------------------------------------------------------------- |
144 // |
179 // |
145 // ----------------------------------------------------------------------------- |
180 // ----------------------------------------------------------------------------- |
146 // |
181 // |
147 void UT_CMusPropertyMonitor::UT_CMusPropertyMonitor_RunErrorL() |
182 void UT_CMusPropertyMonitor::UT_CMusPropertyMonitor_RunErrorL() |
148 { |
183 { |
149 EUNIT_ASSERT( !iMusCallStateObserverInovked ); |
|
150 EUNIT_ASSERT( iMusPropertyMonitor ); |
184 EUNIT_ASSERT( iMusPropertyMonitor ); |
151 TInt CallState; |
|
152 TInt error = KErrNotFound; |
185 TInt error = KErrNotFound; |
153 |
186 iMusPropertyMonitor->RunError(error); |
154 // Call is Established: |
187 } |
155 User::LeaveIfError( RProperty::Set( NMusSessionInformationApi::KCategoryUid, |
188 |
156 NMusSessionInformationApi::KMusCallEvent, |
189 |
157 NMusSessionInformationApi::ECallConnected ) ); |
190 |
158 |
191 |
159 // Test1: Invoking Error Situation, Ensure Calll is disconected. |
|
160 User::LeaveIfError( iMusPropertyMonitor->RunError(error)); |
|
161 User::LeaveIfError( RProperty::Get( NMusSessionInformationApi::KCategoryUid, |
|
162 NMusSessionInformationApi::KMusCallEvent, |
|
163 CallState ) ); |
|
164 EUNIT_ASSERT( CallState == NMusSessionInformationApi::ENoCall ); |
|
165 EUNIT_ASSERT( iMusCallStateObserverInovked ); |
|
166 } |
|
167 |
|
168 |
|
169 // ----------------------------------------------------------------------------- |
|
170 // UT_CMusPropertyMonitor::UT_CMusPropertyMonitor_IsCallConnected() |
|
171 // Checks from the P/S keys if the Call is connected. |
|
172 // ----------------------------------------------------------------------------- |
|
173 // |
|
174 void UT_CMusPropertyMonitor::UT_CMusPropertyMonitor_IsCallConnected() |
|
175 { |
|
176 // Test1: Call Not Connected: |
|
177 TBool callConnected = EFalse; |
|
178 User::LeaveIfError( RProperty::Set( NMusSessionInformationApi::KCategoryUid, |
|
179 NMusSessionInformationApi::KMusCallEvent, |
|
180 NMusSessionInformationApi::ENoCall ) ); |
|
181 |
|
182 callConnected = iMusPropertyMonitor->IsCallConnected(); |
|
183 EUNIT_ASSERT( callConnected == EFalse ); |
|
184 |
|
185 // Test2: Call Connected: |
|
186 User::LeaveIfError( RProperty::Set( NMusSessionInformationApi::KCategoryUid, |
|
187 NMusSessionInformationApi::KMusCallEvent, |
|
188 NMusSessionInformationApi::ECallConnected ) ); |
|
189 |
|
190 callConnected = iMusPropertyMonitor->IsCallConnected(); |
|
191 EUNIT_ASSERT( callConnected == ETrue ); |
|
192 |
|
193 |
|
194 // Test3: Hold and Conference are concidered as call connected |
|
195 User::LeaveIfError( RProperty::Set( NMusSessionInformationApi::KCategoryUid, |
|
196 NMusSessionInformationApi::KMusCallEvent, |
|
197 NMusSessionInformationApi::ECallHold ) ); |
|
198 |
|
199 callConnected = iMusPropertyMonitor->IsCallConnected(); |
|
200 EUNIT_ASSERT( callConnected == ETrue ); |
|
201 } |
|
202 |
|
203 |
|
204 // ----------------------------------------------------------------------------- |
|
205 // MusCallStateChanged from the MusCallStateObserver |
|
206 // ----------------------------------------------------------------------------- |
|
207 // |
|
208 void UT_CMusPropertyMonitor::MusCallStateChanged() |
|
209 { |
|
210 iMusCallStateObserverInovked = ETrue; |
|
211 } |
|
212 |
|
213 |
192 |
214 |
193 |
215 // TEST TABLE |
194 // TEST TABLE |
216 |
195 |
217 EUNIT_BEGIN_TEST_TABLE( |
196 EUNIT_BEGIN_TEST_TABLE( |