1 /*
2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include <gtest/gtest.h>
17
18 #define private public
19 #define protected public
20 #include "array_wrapper.h"
21 #undef private
22 #undef protected
23
24 using namespace testing::ext;
25
26 namespace OHOS {
27 namespace AAFwk {
28 class ArrayWrapperBaseTest : public testing::Test {
29 public:
SetUpTestCase()30 static void SetUpTestCase() {};
TearDownTestCase()31 static void TearDownTestCase() {};
SetUp()32 void SetUp() {};
TearDown()33 void TearDown() {};
34 };
35
36 /**
37 * @tc.number: AaFwk_Array_Wrapper_Get_0100
38 * @tc.name: Get
39 * @tc.desc:
40 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Get_0100, Function | MediumTest | Level1)41 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Get_0100, Function | MediumTest | Level1)
42 {
43 long index = 5;
44 InterfaceID typeId;
45 sptr<IArray> arr = new Array(index, typeId);
46 sptr<IInterface> value;
47 ErrCode result = arr->Get(index, value);
48 EXPECT_EQ(result, ERR_INVALID_VALUE);
49 }
50
51 /**
52 * @tc.number: AaFwk_Array_Wrapper_Get_0200
53 * @tc.name: Get
54 * @tc.desc:
55 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Get_0200, Function | MediumTest | Level1)56 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Get_0200, Function | MediumTest | Level1)
57 {
58 long index = 5;
59 InterfaceID typeId;
60 sptr<IArray> arr = new Array(index, typeId);
61 sptr<IInterface> value;
62 long key = 1;
63 ErrCode result = arr->Get(key, value);
64 EXPECT_EQ(result, ERR_OK);
65 }
66
67 /**
68 * @tc.number: AaFwk_Array_Wrapper_GetLength_0100
69 * @tc.name: GetLength
70 * @tc.desc:
71 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_GetLength_0100, Function | MediumTest | Level1)72 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_GetLength_0100, Function | MediumTest | Level1)
73 {
74 long size = 1;
75 InterfaceID typeId;
76 sptr<IArray> arr = new Array(size, typeId);
77 ErrCode result = arr->GetLength(size);
78 EXPECT_EQ(result, ERR_OK);
79 }
80
81 /**
82 * @tc.number: AaFwk_Array_Wrapper_GetType_0100
83 * @tc.name: GetType
84 * @tc.desc:
85 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_GetType_0100, Function | MediumTest | Level1)86 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_GetType_0100, Function | MediumTest | Level1)
87 {
88 long size = 1;
89 InterfaceID typeId = g_IID_IString;
90 sptr<IArray> arr = new Array(size, typeId);
91 ErrCode result = arr->GetType(typeId);
92 EXPECT_EQ(result, ERR_OK);
93 }
94
95 /**
96 * @tc.number: AaFwk_Array_Wrapper_Set_0100
97 * @tc.name: Set
98 * @tc.desc:
99 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Set_0100, Function | MediumTest | Level1)100 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Set_0100, Function | MediumTest | Level1)
101 {
102 long index = 5;
103 InterfaceID typeId;
104 sptr<IArray> arr = new Array(index, typeId);
105 sptr<IInterface> value;
106 long key = 1;
107 ErrCode result = arr->Set(key, value);
108 EXPECT_EQ(result, ERR_OK);
109 }
110
111 /**
112 * @tc.number: AaFwk_Array_Wrapper_Set_0200
113 * @tc.name: Set
114 * @tc.desc:
115 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Set_0200, Function | MediumTest | Level1)116 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_Set_0200, Function | MediumTest | Level1)
117 {
118 long index = 5;
119 InterfaceID typeId;
120 sptr<IArray> arr = new Array(index, typeId);
121 sptr<IInterface> value;
122 long key = -1;
123 ErrCode result = arr->Set(key, value);
124 EXPECT_EQ(result, ERR_INVALID_VALUE);
125 }
126
127 /**
128 * @tc.number: AaFwk_Array_Wrapper_IsBooleanArray_0100
129 * @tc.name: IsBooleanArray
130 * @tc.desc:
131 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsBooleanArray_0100, Function | MediumTest | Level1)132 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsBooleanArray_0100, Function | MediumTest | Level1)
133 {
134 long index = 5;
135 InterfaceID typeId;
136 sptr<IArray> arr = new Array(index, typeId);
137 bool result = Array::IsBooleanArray(arr);
138 EXPECT_EQ(result, false);
139 }
140
141 /**
142 * @tc.number: AaFwk_Array_Wrapper_IsBooleanArray_0200
143 * @tc.name: IsBooleanArray
144 * @tc.desc:
145 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsBooleanArray_0200, Function | MediumTest | Level1)146 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsBooleanArray_0200, Function | MediumTest | Level1)
147 {
148 long index = 5;
149 InterfaceID typeId = g_IID_IBoolean;
150 sptr<IArray> arr = new Array(index, typeId);
151 bool result = Array::IsBooleanArray(arr);
152 EXPECT_EQ(result, true);
153 }
154
155 /**
156 * @tc.number: AaFwk_Array_Wrapper_IsCharArray_0100
157 * @tc.name: IsCharArray
158 * @tc.desc:
159 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsCharArray_0100, Function | MediumTest | Level1)160 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsCharArray_0100, Function | MediumTest | Level1)
161 {
162 long index = 5;
163 InterfaceID typeId;
164 sptr<IArray> arr = new Array(index, typeId);
165 bool result = Array::IsCharArray(arr);
166 EXPECT_EQ(result, false);
167 }
168
169 /**
170 * @tc.number: AaFwk_Array_Wrapper_IsCharArray_0200
171 * @tc.name: IsCharArray
172 * @tc.desc:
173 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsCharArray_0200, Function | MediumTest | Level1)174 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsCharArray_0200, Function | MediumTest | Level1)
175 {
176 long index = 5;
177 InterfaceID typeId = g_IID_IChar;
178 sptr<IArray> arr = new Array(index, typeId);
179 bool result = Array::IsCharArray(arr);
180 EXPECT_EQ(result, true);
181 }
182
183 /**
184 * @tc.number: AaFwk_Array_Wrapper_IsByteArray_0100
185 * @tc.name: IsByteArray
186 * @tc.desc:
187 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsByteArray_0100, Function | MediumTest | Level1)188 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsByteArray_0100, Function | MediumTest | Level1)
189 {
190 long index = 5;
191 InterfaceID typeId;
192 sptr<IArray> arr = new Array(index, typeId);
193 bool result = Array::IsByteArray(arr);
194 EXPECT_EQ(result, false);
195 }
196
197 /**
198 * @tc.number: AaFwk_Array_Wrapper_IsByteArray_0200
199 * @tc.name: IsByteArray
200 * @tc.desc:
201 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsByteArray_0200, Function | MediumTest | Level1)202 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsByteArray_0200, Function | MediumTest | Level1)
203 {
204 long index = 5;
205 InterfaceID typeId = g_IID_IByte;
206 sptr<IArray> arr = new Array(index, typeId);
207 bool result = Array::IsByteArray(arr);
208 EXPECT_EQ(result, true);
209 }
210
211 /**
212 * @tc.number: AaFwk_Array_Wrapper_IsShortArray_0100
213 * @tc.name: IsShortArray
214 * @tc.desc:
215 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsShortArray_0100, Function | MediumTest | Level1)216 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsShortArray_0100, Function | MediumTest | Level1)
217 {
218 long index = 5;
219 InterfaceID typeId;
220 sptr<IArray> arr = new Array(index, typeId);
221 bool result = Array::IsShortArray(arr);
222 EXPECT_EQ(result, false);
223 }
224
225 /**
226 * @tc.number: AaFwk_Array_Wrapper_IsShortArray_0200
227 * @tc.name: IsShortArray
228 * @tc.desc:
229 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsShortArray_0200, Function | MediumTest | Level1)230 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsShortArray_0200, Function | MediumTest | Level1)
231 {
232 long index = 5;
233 InterfaceID typeId = g_IID_IShort;
234 sptr<IArray> arr = new Array(index, typeId);
235 bool result = Array::IsShortArray(arr);
236 EXPECT_EQ(result, true);
237 }
238
239 /**
240 * @tc.number: AaFwk_Array_Wrapper_IsIntegerArray_0100
241 * @tc.name: IsIntegerArray
242 * @tc.desc:
243 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsIntegerArray_0100, Function | MediumTest | Level1)244 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsIntegerArray_0100, Function | MediumTest | Level1)
245 {
246 long index = 5;
247 InterfaceID typeId;
248 sptr<IArray> arr = new Array(index, typeId);
249 bool result = Array::IsIntegerArray(arr);
250 EXPECT_EQ(result, false);
251 }
252
253 /**
254 * @tc.number: AaFwk_Array_Wrapper_IsIntegerArray_0200
255 * @tc.name: IsIntegerArray
256 * @tc.desc:
257 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsIntegerArray_0200, Function | MediumTest | Level1)258 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsIntegerArray_0200, Function | MediumTest | Level1)
259 {
260 long index = 5;
261 InterfaceID typeId = g_IID_IInteger;
262 sptr<IArray> arr = new Array(index, typeId);
263 bool result = Array::IsIntegerArray(arr);
264 EXPECT_EQ(result, true);
265 }
266
267 /**
268 * @tc.number: AaFwk_Array_Wrapper_IsLongArray_0100
269 * @tc.name: IsLongArray
270 * @tc.desc:
271 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsLongArray_0100, Function | MediumTest | Level1)272 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsLongArray_0100, Function | MediumTest | Level1)
273 {
274 long index = 5;
275 InterfaceID typeId;
276 sptr<IArray> arr = new Array(index, typeId);
277 bool result = Array::IsLongArray(arr);
278 EXPECT_EQ(result, false);
279 }
280
281 /**
282 * @tc.number: AaFwk_Array_Wrapper_IsLongArray_0200
283 * @tc.name: IsLongArray
284 * @tc.desc:
285 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsLongArray_0200, Function | MediumTest | Level1)286 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsLongArray_0200, Function | MediumTest | Level1)
287 {
288 long index = 5;
289 InterfaceID typeId = g_IID_ILong;
290 sptr<IArray> arr = new Array(index, typeId);
291 bool result = Array::IsLongArray(arr);
292 EXPECT_EQ(result, true);
293 }
294
295 /**
296 * @tc.number: AaFwk_Array_Wrapper_IsFloatArray_0100
297 * @tc.name: IsFloatArray
298 * @tc.desc:
299 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsFloatArray_0100, Function | MediumTest | Level1)300 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsFloatArray_0100, Function | MediumTest | Level1)
301 {
302 long index = 5;
303 InterfaceID typeId;
304 sptr<IArray> arr = new Array(index, typeId);
305 bool result = Array::IsFloatArray(arr);
306 EXPECT_EQ(result, false);
307 }
308
309 /**
310 * @tc.number: AaFwk_Array_Wrapper_IsFloatArray_0200
311 * @tc.name: IsFloatArray
312 * @tc.desc:
313 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsFloatArray_0200, Function | MediumTest | Level1)314 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsFloatArray_0200, Function | MediumTest | Level1)
315 {
316 long index = 5;
317 InterfaceID typeId = g_IID_IFloat;
318 sptr<IArray> arr = new Array(index, typeId);
319 bool result = Array::IsFloatArray(arr);
320 EXPECT_EQ(result, true);
321 }
322
323 /**
324 * @tc.number: AaFwk_Array_Wrapper_IsDoubleArray_0100
325 * @tc.name: IsDoubleArray
326 * @tc.desc:
327 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsDoubleArray_0100, Function | MediumTest | Level1)328 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsDoubleArray_0100, Function | MediumTest | Level1)
329 {
330 long index = 5;
331 InterfaceID typeId;
332 sptr<IArray> arr = new Array(index, typeId);
333 bool result = Array::IsDoubleArray(arr);
334 EXPECT_EQ(result, false);
335 }
336
337 /**
338 * @tc.number: AaFwk_Array_Wrapper_IsDoubleArray_0200
339 * @tc.name: IsDoubleArray
340 * @tc.desc:
341 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsDoubleArray_0200, Function | MediumTest | Level1)342 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsDoubleArray_0200, Function | MediumTest | Level1)
343 {
344 long index = 5;
345 InterfaceID typeId = g_IID_IDouble;
346 sptr<IArray> arr = new Array(index, typeId);
347 bool result = Array::IsDoubleArray(arr);
348 EXPECT_EQ(result, true);
349 }
350
351 /**
352 * @tc.number: AaFwk_Array_Wrapper_IsStringArray_0100
353 * @tc.name: IsStringArray
354 * @tc.desc:
355 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsStringArray_0100, Function | MediumTest | Level1)356 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsStringArray_0100, Function | MediumTest | Level1)
357 {
358 long index = 5;
359 InterfaceID typeId;
360 sptr<IArray> arr = new Array(index, typeId);
361 bool result = Array::IsStringArray(arr);
362 EXPECT_EQ(result, false);
363 }
364
365 /**
366 * @tc.number: AaFwk_Array_Wrapper_IsStringArray_0200
367 * @tc.name: IsStringArray
368 * @tc.desc:
369 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsStringArray_0200, Function | MediumTest | Level1)370 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsStringArray_0200, Function | MediumTest | Level1)
371 {
372 long index = 5;
373 InterfaceID typeId = g_IID_IString;
374 sptr<IArray> arr = new Array(index, typeId);
375 bool result = Array::IsStringArray(arr);
376 EXPECT_EQ(result, true);
377 }
378
379 /**
380 * @tc.number: AaFwk_Array_Wrapper_IsWantParamsArray_0100
381 * @tc.name: IsWantParamsArray
382 * @tc.desc:
383 */
HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsWantParamsArray_0100, Function | MediumTest | Level1)384 HWTEST_F(ArrayWrapperBaseTest, AaFwk_Array_Wrapper_IsWantParamsArray_0100, Function | MediumTest | Level1)
385 {
386 long index = 5;
387 InterfaceID typeId;
388 sptr<IArray> arr = new Array(index, typeId);
389 bool result = Array::IsWantParamsArray(arr);
390 EXPECT_EQ(result, false);
391 }
392 }
393 }