|
1 /* |
|
2 * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: Implementation of the T_MProfilesNamesArray test class. |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 //////////////////////////////////////////////////////////////////////// |
|
20 // T_MProfilesNamesArray.cpp |
|
21 // |
|
22 |
|
23 // INCLUDES |
|
24 #include <e32math.h> |
|
25 #include <e32svr.h> |
|
26 |
|
27 #include <EUnitMacros.h> |
|
28 #include <TEUnitAssertionInfo.h> |
|
29 |
|
30 #include <BAMDESCA.H> |
|
31 #include <MProfileEngine.h> |
|
32 #include <MProfileName.h> |
|
33 #include <MProfilesNamesArray.h> |
|
34 #include "T_ProfileTestTools.h" |
|
35 |
|
36 // the header for the tested class |
|
37 #include "T_MProfilesNamesArray.h" |
|
38 |
|
39 //CONSTS |
|
40 |
|
41 // create the testing class |
|
42 T_MProfilesNamesArray* T_MProfilesNamesArray::NewLC() |
|
43 { |
|
44 T_MProfilesNamesArray* self = new(ELeave) T_MProfilesNamesArray; |
|
45 |
|
46 CleanupStack::PushL( self ); |
|
47 // need to generate the table, so call base classes |
|
48 // second phase constructor |
|
49 self->ConstructL(); |
|
50 return self; |
|
51 } |
|
52 |
|
53 void T_MProfilesNamesArray::ConstructL() |
|
54 { |
|
55 CEUnitTestSuiteClass::ConstructL(); |
|
56 } |
|
57 |
|
58 T_MProfilesNamesArray::~T_MProfilesNamesArray() |
|
59 { |
|
60 iFs.Close(); |
|
61 if( iProfileEngine ) |
|
62 { |
|
63 iProfileEngine->Release(); |
|
64 } |
|
65 delete iProfilesNames; |
|
66 } |
|
67 |
|
68 /** |
|
69 * Assistance methods |
|
70 */ |
|
71 |
|
72 |
|
73 /** |
|
74 * Setup |
|
75 */ |
|
76 void T_MProfilesNamesArray::EmptySetupL() |
|
77 { |
|
78 } |
|
79 |
|
80 |
|
81 |
|
82 void T_MProfilesNamesArray::SetupL() |
|
83 { |
|
84 iFs.Connect(); |
|
85 |
|
86 iProfileEngine = CreateProfileEngineL(); |
|
87 iProfilesNames = iProfileEngine->ProfilesNamesArrayLC(); |
|
88 CleanupStack::Pop(); |
|
89 } |
|
90 /* |
|
91 void T_MProfilesNamesArray::Setup0L() |
|
92 { |
|
93 iActiveId = 0; |
|
94 SetupL(); |
|
95 } |
|
96 |
|
97 void T_MProfilesNamesArray::Setup1L() |
|
98 { |
|
99 iActiveId = 1; |
|
100 SetupL(); |
|
101 } |
|
102 |
|
103 void T_MProfilesNamesArray::Setup2L() |
|
104 { |
|
105 iActiveId = 2; |
|
106 SetupL(); |
|
107 } |
|
108 |
|
109 void T_MProfilesNamesArray::Setup3L() |
|
110 { |
|
111 iActiveId = 3; |
|
112 SetupL(); |
|
113 } |
|
114 |
|
115 void T_MProfilesNamesArray::Setup4L() |
|
116 { |
|
117 iActiveId = 4; |
|
118 SetupL(); |
|
119 } |
|
120 */ |
|
121 |
|
122 /** |
|
123 * Teardown |
|
124 */ |
|
125 void T_MProfilesNamesArray::EmptyTeardown() |
|
126 { |
|
127 |
|
128 } |
|
129 |
|
130 void T_MProfilesNamesArray::Teardown() |
|
131 { |
|
132 iFs.Close(); |
|
133 if( iProfileEngine ) |
|
134 { |
|
135 iProfileEngine->Release(); |
|
136 iProfileEngine = NULL; |
|
137 } |
|
138 delete iProfilesNames; |
|
139 iProfilesNames = NULL; |
|
140 } |
|
141 |
|
142 /** |
|
143 * Tests |
|
144 */ |
|
145 void T_MProfilesNamesArray::EmptyTestL() |
|
146 { |
|
147 //EUNIT_ASSERT( ETrue ); |
|
148 } |
|
149 |
|
150 void T_MProfilesNamesArray::CreateTestL() |
|
151 { |
|
152 MProfilesNamesArray* array = iProfileEngine->ProfilesNamesArrayLC(); |
|
153 CleanupStack::PopAndDestroy(); |
|
154 array = iProfileEngine->ProfilesNamesArrayLC(); |
|
155 CleanupStack::Pop(); |
|
156 delete array; |
|
157 } |
|
158 |
|
159 void T_MProfilesNamesArray::ProfileNameTestL() |
|
160 { |
|
161 __UHEAP_MARK; |
|
162 const MProfileName* pn = NULL; |
|
163 pn = iProfilesNames->ProfileName( 0 ); |
|
164 EUNIT_ASSERT( pn ); |
|
165 EUNIT_ASSERT( pn->Name().Compare( KProfileGeneralName ) == 0 ); |
|
166 EUNIT_ASSERT( pn->Id() == 0 ); |
|
167 |
|
168 pn = iProfilesNames->ProfileName( 1 ); |
|
169 EUNIT_ASSERT( pn ); |
|
170 EUNIT_ASSERT( pn->Name().Compare( KProfileSilentName ) == 0 ); |
|
171 EUNIT_ASSERT( pn->Id() == 1 ); |
|
172 |
|
173 pn = iProfilesNames->ProfileName( 2 ); |
|
174 EUNIT_ASSERT( pn ); |
|
175 EUNIT_ASSERT( pn->Name().Compare( KProfileMeetingName ) == 0 ); |
|
176 EUNIT_ASSERT( pn->Id() == 2 ); |
|
177 |
|
178 pn = iProfilesNames->ProfileName( 3 ); |
|
179 EUNIT_ASSERT( pn ); |
|
180 EUNIT_ASSERT( pn->Name().Compare( KProfileOutdoorName ) == 0 ); |
|
181 EUNIT_ASSERT( pn->Id() == 3 ); |
|
182 |
|
183 pn = iProfilesNames->ProfileName( 4 ); |
|
184 EUNIT_ASSERT( pn ); |
|
185 EUNIT_ASSERT( pn->Name().Compare( KProfilePagerName ) == 0 ); |
|
186 EUNIT_ASSERT( pn->Id() == 4 ); |
|
187 |
|
188 pn = iProfilesNames->ProfileName( -1 ); |
|
189 EUNIT_ASSERT( !pn ); |
|
190 |
|
191 pn = iProfilesNames->ProfileName( 12 ); |
|
192 EUNIT_ASSERT( !pn ); |
|
193 |
|
194 #ifdef __OFFLINE_MODE |
|
195 pn = iProfilesNames->ProfileName( 5 ); |
|
196 EUNIT_ASSERT( pn ); |
|
197 EUNIT_ASSERT( pn->Name().Compare( KProfileOfflineName ) == 0 ); |
|
198 EUNIT_ASSERT( pn->Id() == 5 ); |
|
199 #endif |
|
200 |
|
201 #ifdef __DRIVE_MODE |
|
202 pn = iProfilesNames->ProfileName( 6 ); |
|
203 EUNIT_ASSERT( pn ); |
|
204 EUNIT_ASSERT( pn->Name().Compare( KProfileDriveName ) == 0 ); |
|
205 EUNIT_ASSERT( pn->Id() == 6 ); |
|
206 #endif |
|
207 pn = iProfilesNames->ProfileName( 7 ); |
|
208 EUNIT_ASSERT( !pn ); |
|
209 |
|
210 __UHEAP_MARKEND; |
|
211 } |
|
212 |
|
213 void T_MProfilesNamesArray::FindIdTestL() |
|
214 { |
|
215 __UHEAP_MARK; |
|
216 EUNIT_ASSERT( iProfilesNames->FindById( 0 ) == 0 ); |
|
217 EUNIT_ASSERT( iProfilesNames->FindById( 1 ) == 1 ); |
|
218 EUNIT_ASSERT( iProfilesNames->FindById( 2 ) == 2 ); |
|
219 EUNIT_ASSERT( iProfilesNames->FindById( 3 ) == 3 ); |
|
220 EUNIT_ASSERT( iProfilesNames->FindById( 4 ) == 4 ); |
|
221 #ifdef __OFFLINE_MODE |
|
222 EUNIT_ASSERT( iProfilesNames->FindById( 5 ) == 5 ); |
|
223 #endif |
|
224 #ifdef __DRIVE_MODE |
|
225 EUNIT_ASSERT( iProfilesNames->FindById( 6 ) == 6 ); |
|
226 #endif |
|
227 EUNIT_ASSERT( iProfilesNames->FindById( 7 ) == KErrNotFound ); |
|
228 EUNIT_ASSERT( iProfilesNames->FindById( -1 ) == KErrNotFound ); |
|
229 EUNIT_ASSERT( iProfilesNames->FindById( 12312312 ) == KErrNotFound ); |
|
230 __UHEAP_MARKEND; |
|
231 } |
|
232 |
|
233 void T_MProfilesNamesArray::FindNameTestL() |
|
234 { |
|
235 __UHEAP_MARK; |
|
236 EUNIT_ASSERT( iProfilesNames->FindByName( KProfileGeneralName ) == 0 ); |
|
237 EUNIT_ASSERT( iProfilesNames->FindByName( KProfileSilentName ) == 1 ); |
|
238 EUNIT_ASSERT( iProfilesNames->FindByName( KProfileMeetingName ) == 2 ); |
|
239 EUNIT_ASSERT( iProfilesNames->FindByName( KProfileOutdoorName ) == 3 ); |
|
240 EUNIT_ASSERT( iProfilesNames->FindByName( KProfilePagerName ) == 4 ); |
|
241 EUNIT_ASSERT( iProfilesNames->FindByName( _L( "general" ) ) == KErrNotFound ); |
|
242 EUNIT_ASSERT( iProfilesNames->FindByName( _L( "" ) ) == KErrNotFound ); |
|
243 EUNIT_ASSERT( iProfilesNames->FindByName( _L( "dasdasdsadsadasdsadasddddddddddddddddddddddddddddddddddddd" ) ) == KErrNotFound ); |
|
244 __UHEAP_MARKEND; |
|
245 } |
|
246 |
|
247 void T_MProfilesNamesArray::MdcaCountTestL() |
|
248 { |
|
249 __UHEAP_MARK; |
|
250 TInt expectedCount( 5 ); |
|
251 #ifdef __OFFLINE_MODE |
|
252 ++expectedCount; |
|
253 #endif |
|
254 #ifdef __DRIVE_MODE |
|
255 ++expectedCount; |
|
256 #endif |
|
257 EUNIT_ASSERT( iProfilesNames->MdcaCount() == expectedCount ); |
|
258 __UHEAP_MARKEND; |
|
259 |
|
260 } |
|
261 |
|
262 void T_MProfilesNamesArray::MdcaPointTestL() |
|
263 { |
|
264 __UHEAP_MARK; |
|
265 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 0 ).Compare( KProfileGeneralName ) == 0 ); |
|
266 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 1 ).Compare( KProfileSilentName ) == 0 ); |
|
267 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 2 ).Compare( KProfileMeetingName ) == 0 ); |
|
268 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 3 ).Compare( KProfileOutdoorName ) == 0 ); |
|
269 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 4 ).Compare( KProfilePagerName ) == 0 ); |
|
270 #ifdef __OFFLINE_MODE |
|
271 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 5 ).Compare( KProfileOfflineName ) == 0 ); |
|
272 #endif |
|
273 #ifdef __DRIVE_MODE |
|
274 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 6 ).Compare( KProfileDriveName ) == 0 ); |
|
275 #endif |
|
276 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 7 ).Compare( _L( "" ) ) == 0 ); |
|
277 EUNIT_ASSERT( iProfilesNames->MdcaPoint( -1 ).Compare( _L( "" ) ) == 0 ); |
|
278 EUNIT_ASSERT( iProfilesNames->MdcaPoint( 12312312 ).Compare( _L( "" ) ) == 0 ); |
|
279 __UHEAP_MARKEND; |
|
280 } |
|
281 |
|
282 |
|
283 // Test case table for this test suite class |
|
284 EUNIT_BEGIN_TEST_TABLE( T_MProfilesNamesArray, "T_MProfilesNamesArray test suite", "MODULE" ) |
|
285 |
|
286 EUNIT_TESTCASE("Create test ", SetupL, CreateTestL, Teardown) |
|
287 EUNIT_TESTCASE("Profile name test ", SetupL, ProfileNameTestL, Teardown) |
|
288 EUNIT_TESTCASE("Find id test ", SetupL, FindIdTestL, Teardown) |
|
289 EUNIT_TESTCASE("Find name test ", SetupL, FindNameTestL, Teardown) |
|
290 EUNIT_TESTCASE("MdcaCount test ", SetupL, MdcaCountTestL, Teardown) |
|
291 EUNIT_TESTCASE("MdcaPoint test ", SetupL, MdcaPointTestL, Teardown) |
|
292 |
|
293 |
|
294 EUNIT_END_TESTCASE_TABLE |
|
295 |
|
296 // End of File |