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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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  */
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 }