• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021 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 "abs_shared_result_set.h"
17 #include "data_ability_predicates.h"
18 #include "values_bucket.h"
19 #include "gtest/gtest.h"
20 #include "mock_ability_test.h"
21 #include "mock_ability_manager_client.h"
22 #include "mock_ability_thread_for_data_observer.h"
23 #include "context.h"
24 #include "ability_context.h"
25 #include "data_ability_helper.h"
26 
27 namespace OHOS {
28 namespace AppExecFwk {
29 using namespace testing::ext;
30 REGISTER_AA(MockAbilityTest)
31 /*
32  * Parameters:
33  * Action
34  * Entity
35  * Flag
36  * ElementName
37  */
38 class DataAbilityHelperTest : public testing::Test {
39 public:
DataAbilityHelperTest()40     DataAbilityHelperTest() {};
~DataAbilityHelperTest()41     virtual ~DataAbilityHelperTest() {};
42 
43     static void SetUpTestCase(void);
44     static void TearDownTestCase(void);
45     void SetUp();
46     void TearDown();
47 
48 public:
49 };
50 
SetUpTestCase(void)51 void DataAbilityHelperTest::SetUpTestCase(void)
52 {}
53 
TearDownTestCase(void)54 void DataAbilityHelperTest::TearDownTestCase(void)
55 {}
56 
SetUp(void)57 void DataAbilityHelperTest::SetUp(void)
58 {}
59 
TearDown(void)60 void DataAbilityHelperTest::TearDown(void)
61 {}
62 
63 /**
64  * @tc.number: AaFwk_DataAbilityHelper_Insert_Test_0100
65  * @tc.name: DataAbilityHelper
66  * @tc.desc: Insert with DataAbilityHelper which created with uri.
67  */
68 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Insert_Test_0100, Function | MediumTest | Level1)
69 {
70     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Insert_Test_0100 start";
71 
72     sptr<AppExecFwk::AbilityThread> thread = nullptr;
73     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
74     std::shared_ptr<Uri> uri =
75         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
76 
77     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
78     NativeRdb::ValuesBucket val;
79     val.PutInt("22", 22);
80     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
81 
82     int value = dataAbilityHelper->Insert(urivalue, val);
83 
84     EXPECT_EQ(value, 20);
85 
86     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Insert_Test_0100 end";
87 }
88 
89 /**
90  * @tc.number: AaFwk_DataAbilityHelper_Insert_Test_0200
91  * @tc.name: DataAbilityHelper
92  * @tc.desc: Insert with DataAbilityHelper which created without uri.
93  */
94 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Insert_Test_0200, Function | MediumTest | Level1)
95 {
96     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Insert_Test_0200 start";
97 
98     sptr<AppExecFwk::AbilityThread> thread = nullptr;
99     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
100     std::shared_ptr<Uri> uri =
101         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
102 
103     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
104     NativeRdb::ValuesBucket val;
105     val.PutInt("22", 20);
106     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
107 
108     int value = dataAbilityHelper->Insert(urivalue, val);
109 
110     EXPECT_EQ(value, 20);
111 
112     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Insert_Test_0200 end";
113 }
114 
115 /**
116  * @tc.number: AaFwk_DataAbilityHelper_Update_Test_0100
117  * @tc.name: DataAbilityHelper
118  * @tc.desc: Update with DataAbilityHelper which created with uri.
119  */
120 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Update_Test_0100, Function | MediumTest | Level1)
121 {
122     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Update_Test_0100 start";
123 
124     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
125     std::shared_ptr<Uri> uri =
126         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
127 
128     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
129 
130     NativeRdb::ValuesBucket val;
131     val.PutInt("22", 22);
132     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
133     NativeRdb::DataAbilityPredicates predicates;
134     int value = dataAbilityHelper->Update(urivalue, val, predicates);
135     EXPECT_EQ(value, 33);
136 
137     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Update_Test_0100 end";
138 }
139 
140 /**
141  * @tc.number: AaFwk_DataAbilityHelper_Update_Test_0200
142  * @tc.name: DataAbilityHelper
143  * @tc.desc: Update with DataAbilityHelper which created without uri.
144  */
145 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Update_Test_0200, Function | MediumTest | Level1)
146 {
147     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Insert_Test_0200 start";
148     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
149     std::shared_ptr<Uri> uri =
150         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
151     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
152 
153     NativeRdb::ValuesBucket val;
154     val.PutInt("22", 22);
155     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
156     NativeRdb::DataAbilityPredicates predicates;
157     int value = dataAbilityHelper->Update(urivalue, val, predicates);
158     EXPECT_EQ(value, 33);
159 
160     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Insert_Test_0200 end";
161 }
162 
163 /**
164  * @tc.number: AaFwk_DataAbilityHelper_GetFileTypes_Test_0100
165  * @tc.name: DataAbilityHelper
166  * @tc.desc: GetFileTypes with DataAbilityHelper which created with uri.
167  */
168 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_GetFileTypes_Test_0100, Function | MediumTest | Level1)
169 {
170     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetFileTypes_Test_0100 start";
171 
172     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
173     std::shared_ptr<Uri> uri =
174         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
175     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
176 
177     std::string mimeTypeFilter("mimeTypeFiltertest");
178     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
179     std::vector<std::string> result = dataAbilityHelper->GetFileTypes(urivalue, mimeTypeFilter);
180 
181     std::vector<std::string> list;
182     list.push_back("Type1");
183     list.push_back("Type2");
184     list.push_back("Type3");
185 
186     for (size_t i = 0; i < result.size(); i++) {
187         EXPECT_STREQ(result.at(i).c_str(), list.at(i).c_str());
188     }
189 
190     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetFileTypes_Test_0100 end";
191 }
192 
193 /**
194  * @tc.number: AaFwk_DataAbilityHelper_GetFileTypes_Test_0200
195  * @tc.name: DataAbilityHelper
196  * @tc.desc: GetFileTypes with DataAbilityHelper which created without uri.
197  */
198 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_GetFileTypes_Test_0200, Function | MediumTest | Level1)
199 {
200     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetFileTypes_Test_0200 start";
201 
202     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
203     std::shared_ptr<Uri> uri =
204         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
205     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
206 
207     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
208     std::string mimeTypeFilter("mimeTypeFiltertest");
209     std::vector<std::string> result = dataAbilityHelper->GetFileTypes(urivalue, mimeTypeFilter);
210 
211     std::vector<std::string> list;
212     list.push_back("Type1");
213     list.push_back("Type2");
214     list.push_back("Type3");
215 
216     for (unsigned int i = 0; i < result.size(); i++) {
217         EXPECT_STREQ(result.at(i).c_str(), list.at(i).c_str());
218     }
219 
220     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetFileTypes_Test_0200 end";
221 }
222 
223 /**
224  * @tc.number: AaFwk_DataAbilityHelper_OpenFile_Test_0100
225  * @tc.name: DataAbilityHelper
226  * @tc.desc: Openfile with DataAbilityHelper which created with uri.
227  */
228 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_OpenFile_Test_0100, Function | MediumTest | Level1)
229 {
230     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenFile_Test_0100 start";
231 
232     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
233     std::shared_ptr<Uri> uri =
234         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
235     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
236 
237     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10?test/te.txt");
238     std::string mode("r");
239     int fd = dataAbilityHelper->OpenFile(urivalue, mode);
240     EXPECT_NE(fd, -1);
241 
242     if (fd > 0) {
243         std::string result = "123456";
244         FILE *file = nullptr;
245         file = fdopen(fd, "r");
246         EXPECT_NE(file, nullptr);
247 
248         if (file != nullptr) {
249             int strSize = 7;
250             std::string str("");
251             str.resize(strSize);
252             if (!feof(file)) {
253                 fgets(&str[0], strSize, file);
254             }
255             string stringstr(str);
256             EXPECT_STREQ(stringstr.c_str(), result.c_str());
257             fclose(file);
258             system("rm /dataability_openfile_test.txt");
259         }
260     }
261 
262     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenFile_Test_0100 end";
263 }
264 
265 /**
266  * @tc.number: AaFwk_DataAbilityHelper_OpenFile_Test_0200
267  * @tc.name: DataAbilityHelper Insert
268  * @tc.desc: Openfile with DataAbilityHelper which created without uri.
269  */
270 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_OpenFile_Test_0200, Function | MediumTest | Level1)
271 {
272     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenFile_Test_0200 start";
273 
274     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
275     std::shared_ptr<Uri> uri =
276         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
277     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
278 
279     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10?test/te.txt");
280     std::string mode("r");
281     int fd = dataAbilityHelper->OpenFile(urivalue, mode);
282     EXPECT_NE(fd, -1);
283 
284     if (fd > 0) {
285         std::string result = "123456";
286         FILE *file = nullptr;
287         file = fdopen(fd, "r");
288         EXPECT_NE(file, nullptr);
289 
290         if (file != nullptr) {
291             int strSize = 7;
292             std::string str("");
293             str.resize(strSize);
294             if (!feof(file)) {
295                 fgets(&str[0], strSize, file);
296             }
297             string stringstr(str);
298             EXPECT_STREQ(stringstr.c_str(), result.c_str());
299             fclose(file);
300             system("rm /dataability_openfile_test.txt");
301         }
302     }
303 
304     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenFile_Test_0200 end";
305 }
306 
307 /**
308  * @tc.number: AaFwk_DataAbilityHelper_OpenRawFile_Test_0100
309  * @tc.name: DataAbilityHelper
310  * @tc.desc: OpenRawFile with DataAbilityHelper which created with uri.
311  */
312 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_OpenRawFile_Test_0100, Function | MediumTest | Level1)
313 {
314     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenRawFile_Test_0100 start";
315 
316     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
317     std::shared_ptr<Uri> uri =
318         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
319     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
320 
321     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
322     std::string mode("modetest");
323     int fd = dataAbilityHelper->OpenRawFile(urivalue, mode);
324 
325     EXPECT_EQ(fd, 122);
326 
327     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenRawFile_Test_0100 end";
328 }
329 
330 /**
331  * @tc.number: AaFwk_DataAbilityHelper_OpenRawFile_Test_0200
332  * @tc.name: DataAbilityHelper Insert
333  * @tc.desc: OpenRawFile with DataAbilityHelper which created without uri.
334  */
335 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_OpenRawFile_Test_0200, Function | MediumTest | Level1)
336 {
337     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenRawFile_Test_0200 start";
338 
339     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
340     std::shared_ptr<Uri> uri =
341         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
342     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
343 
344     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
345     std::string mode("modetest");
346     int fd = dataAbilityHelper->OpenRawFile(urivalue, mode);
347 
348     EXPECT_EQ(fd, 122);
349 
350     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenRawFile_Test_0200 end";
351 }
352 
353 /**
354  * @tc.number: AaFwk_DataAbilityHelper_BatchInsert_Test_0100
355  * @tc.name: DataAbilityHelper
356  * @tc.desc: BatchInsert with DataAbilityHelper which created with uri.
357  */
358 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_BatchInsert_Test_0100, Function | MediumTest | Level1)
359 {
360     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_BatchInsert_Test_0100 start";
361 
362     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
363     std::shared_ptr<Uri> uri =
364         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
365     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
366 
367     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
368     std::vector<NativeRdb::ValuesBucket> values;
369     int fd = dataAbilityHelper->BatchInsert(urivalue, values);
370 
371     EXPECT_EQ(fd, 115);
372 
373     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_BatchInsert_Test_0100 end";
374 }
375 
376 /**
377  * @tc.number: AaFwk_DataAbilityHelper_BatchInsert_Test_0200
378  * @tc.name: DataAbilityHelper Insert
379  * @tc.desc: BatchInsert with DataAbilityHelper which created without uri.
380  */
381 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_BatchInsert_Test_0200, Function | MediumTest | Level1)
382 {
383     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_BatchInsert_Test_0200 start";
384 
385     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
386     std::shared_ptr<Uri> uri =
387         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
388     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
389 
390     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
391     std::vector<NativeRdb::ValuesBucket> values;
392     int fd = dataAbilityHelper->BatchInsert(urivalue, values);
393 
394     EXPECT_EQ(fd, 115);
395 
396     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_BatchInsert_Test_0200 end";
397 }
398 
399 /**
400  * @tc.number: AaFwk_DataAbilityHelper_Reload_Test_0100
401  * @tc.name: DataAbilityHelper
402  * @tc.desc: Reload with DataAbilityHelper which created with uri.
403  */
404 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Reload_Test_0100, Function | MediumTest | Level1)
405 {
406     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Reload_Test_0100 start";
407 
408     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
409     std::shared_ptr<Uri> uri =
410         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
411     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
412 
413     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
414     PacMap extras;
415     int fd = dataAbilityHelper->Reload(urivalue, extras);
416 
417     EXPECT_EQ(fd, true);
418 
419     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Reload_Test_0100 end";
420 }
421 
422 /**
423  * @tc.number: AaFwk_DataAbilityHelper_Reload_Test_0200
424  * @tc.name: DataAbilityHelper
425  * @tc.desc: Reload with DataAbilityHelper which created without uri.
426  */
427 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Reload_Test_0200, Function | MediumTest | Level1)
428 {
429     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Reload_Test_0200 start";
430 
431     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
432     std::shared_ptr<Uri> uri =
433         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
434     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
435 
436     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
437     PacMap extras;
438     int fd = dataAbilityHelper->Reload(urivalue, extras);
439 
440     EXPECT_EQ(fd, true);
441 
442     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Reload_Test_0200 end";
443 }
444 
445 /**
446  * @tc.number: AaFwk_DataAbilityHelper_Delete_Test_0100
447  * @tc.name: DataAbilityHelper
448  * @tc.desc: Delete with DataAbilityHelper which created with uri.
449  */
450 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Delete_Test_0100, Function | MediumTest | Level1)
451 {
452     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Delete_Test_0100 start";
453 
454     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
455     std::shared_ptr<Uri> uri =
456         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
457     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
458 
459     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
460     NativeRdb::DataAbilityPredicates predicates;
461     int index = dataAbilityHelper->Delete(urivalue, predicates);
462 
463     EXPECT_EQ(index, 234);
464 
465     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Delete_Test_0100 end";
466 }
467 
468 /**
469  * @tc.number: AaFwk_DataAbilityHelper_Delete_Test_0200
470  * @tc.name: DataAbilityHelper
471  * @tc.desc: Delete with DataAbilityHelper which created without uri.
472  */
473 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Delete_Test_0200, Function | MediumTest | Level1)
474 {
475     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Delete_Test_0200 start";
476 
477     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
478     std::shared_ptr<Uri> uri =
479         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
480     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
481 
482     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
483     NativeRdb::DataAbilityPredicates predicates;
484     int index = dataAbilityHelper->Delete(urivalue, predicates);
485 
486     EXPECT_EQ(index, 234);
487 
488     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Delete_Test_0200 end";
489 }
490 /**
491  * @tc.number: AaFwk_DataAbilityHelper_Query_Test_0100
492  * @tc.name: DataAbilityHelper
493  * @tc.desc: Query with DataAbilityHelper which created with uri.
494  */
495 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Query_Test_0100, Function | MediumTest | Level1)
496 {
497     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Query_Test_0100 start";
498 
499     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
500     std::shared_ptr<Uri> uri =
501         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
502     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
503 
504     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
505 
506     std::vector<std::string> columns;
507     columns.push_back("string1");
508     columns.push_back("string2");
509     columns.push_back("string3");
510     NativeRdb::DataAbilityPredicates predicates;
511 
512     EXPECT_NE(nullptr, dataAbilityHelper->Query(urivalue, columns, predicates));
513 
514     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Query_Test_0100 end";
515 }
516 
517 /**
518  * @tc.number: AaFwk_DataAbilityHelper_Query_Test_0200
519  * @tc.name: DataAbilityHelper Insert
520  * @tc.desc: Query with DataAbilityHelper which created without uri.
521  */
522 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Query_Test_0200, Function | MediumTest | Level1)
523 {
524     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Query_Test_0200 start";
525 
526     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
527     std::shared_ptr<Uri> uri =
528         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
529     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
530 
531     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
532 
533     std::vector<std::string> columns;
534     columns.push_back("string1");
535     columns.push_back("string2");
536     columns.push_back("string3");
537     NativeRdb::DataAbilityPredicates predicates;
538 
539     EXPECT_NE(nullptr, dataAbilityHelper->Query(urivalue, columns, predicates));
540 
541     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_Query_Test_0200 end";
542 }
543 
544 /**
545  * @tc.number: AaFwk_DataAbilityHelper_GetType_Test_0100
546  * @tc.name: DataAbilityHelper
547  * @tc.desc: Gettype with DataAbilityHelper which created with uri.
548  */
549 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_GetType_Test_0100, Function | MediumTest | Level1)
550 {
551     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetType_Test_0100 start";
552 
553     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
554     std::shared_ptr<Uri> uri =
555         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
556     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
557 
558     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
559     std::string type = dataAbilityHelper->GetType(urivalue);
560 
561     EXPECT_STREQ(type.c_str(), "Type1");
562 
563     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetType_Test_0100 end";
564 }
565 
566 /**
567  * @tc.number: AaFwk_DataAbilityHelper_GetType_Test_0200
568  * @tc.name: DataAbilityHelper
569  * @tc.desc: GetType with DataAbilityHelper which created without uri.
570  */
571 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_GetType_Test_0200, Function | MediumTest | Level1)
572 {
573     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetType_Test_0200 start";
574 
575     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
576     std::shared_ptr<Uri> uri =
577         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
578     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
579 
580     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
581     std::string type = dataAbilityHelper->GetType(urivalue);
582 
583     EXPECT_STREQ(type.c_str(), "Type1");
584 
585     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_GetType_Test_0200 end";
586 }
587 
588 /**
589  * @tc.number: AaFwk_DataAbilityHelper_NormalizeUri_Test_0100
590  * @tc.name: DataAbilityHelper NormalizeUri
591  * @tc.desc: NormalizeUri with DataAbilityHelper which created without uri.
592  */
593 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_NormalizeUri_Test_0100, Function | MediumTest | Level1)
594 {
595     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_NormalizeUri_Test_0100 start";
596 
597     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
598     std::shared_ptr<Uri> uri =
599         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
600     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
601 
602     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
603     Uri type("");
604     type = dataAbilityHelper->NormalizeUri(urivalue);
605 
606     EXPECT_STREQ(type.ToString().c_str(), urivalue.ToString().c_str());
607 
608     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_NormalizeUri_Test_0100 end";
609 }
610 
611 /**
612  * @tc.number: AaFwk_DataAbilityHelper_NormalizeUri_Test_0200
613  * @tc.name: DataAbilityHelper NormalizeUri
614  * @tc.desc: NormalizeUri with DataAbilityHelper which created without uri.
615  */
616 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_NormalizeUri_Test_0200, Function | MediumTest | Level1)
617 {
618     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_NormalizeUri_Test_0200 start";
619 
620     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
621     std::shared_ptr<Uri> uri =
622         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
623     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
624 
625     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
626     Uri type("");
627     type = dataAbilityHelper->NormalizeUri(urivalue);
628 
629     EXPECT_STREQ(type.ToString().c_str(), urivalue.ToString().c_str());
630 
631     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_NormalizeUri_Test_0200 end";
632 }
633 
634 /**
635  * @tc.number: AaFwk_DataAbilityHelper_DenormalizeUri_Test_0100
636  * @tc.name: DataAbilityHelper
637  * @tc.desc: DenormalizeUri with DataAbilityHelper which created without uri.
638  */
639 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_DenormalizeUri_Test_0100, Function | MediumTest | Level1)
640 {
641     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_DenormalizeUri_Test_0100 start";
642 
643     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
644     std::shared_ptr<Uri> uri =
645         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
646     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context, uri);
647 
648     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
649     Uri type("");
650     type = dataAbilityHelper->DenormalizeUri(urivalue);
651 
652     EXPECT_STREQ(type.ToString().c_str(), urivalue.ToString().c_str());
653 
654     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_DenormalizeUri_Test_0100 end";
655 }
656 
657 /**
658  * @tc.number: AaFwk_DataAbilityHelper_DenormalizeUri_Test_0200
659  * @tc.name: DataAbilityHelper DenormalizeUri
660  * @tc.desc: DenormalizeUri with DataAbilityHelper which created without uri.
661  */
662 HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_DenormalizeUri_Test_0200, Function | MediumTest | Level1)
663 {
664     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_DenormalizeUri_Test_0200 start";
665 
666     std::shared_ptr<Context> context = std::make_shared<AbilityContext>();
667     std::shared_ptr<Uri> uri =
668         std::make_shared<Uri>("dataability://device_id/com.domainname.dataability.persondata/person/10");
669     std::shared_ptr<DataAbilityHelper> dataAbilityHelper = DataAbilityHelper::Creator(context);
670 
671     Uri urivalue("dataability://device_id/com.domainname.dataability.persondata/person/10");
672     Uri type("");
673     type = dataAbilityHelper->DenormalizeUri(urivalue);
674 
675     EXPECT_STREQ(type.ToString().c_str(), urivalue.ToString().c_str());
676 
677     GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_DenormalizeUri_Test_0200 end";
678 }
679 }  // namespace AppExecFwk
680 }  // namespace OHOS
681