1f857971dSopenharmony_ci/*
2f857971dSopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd.
3f857971dSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4f857971dSopenharmony_ci * you may not use this file except in compliance with the License.
5f857971dSopenharmony_ci * You may obtain a copy of the License at
6f857971dSopenharmony_ci *
7f857971dSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8f857971dSopenharmony_ci *
9f857971dSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10f857971dSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11f857971dSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12f857971dSopenharmony_ci * See the License for the specific language governing permissions and
13f857971dSopenharmony_ci * limitations under the License.
14f857971dSopenharmony_ci */
15f857971dSopenharmony_ci
16f857971dSopenharmony_ci#include <future>
17f857971dSopenharmony_ci#include <optional>
18f857971dSopenharmony_ci#include <unistd.h>
19f857971dSopenharmony_ci#include <utility>
20f857971dSopenharmony_ci#include <vector>
21f857971dSopenharmony_ci
22f857971dSopenharmony_ci#include <gtest/gtest.h>
23f857971dSopenharmony_ci
24f857971dSopenharmony_ci#include "devicestatus_define.h"
25f857971dSopenharmony_ci#include "devicestatus_errors.h"
26f857971dSopenharmony_ci#include "utility.h"
27f857971dSopenharmony_ci
28f857971dSopenharmony_ci#undef LOG_TAG
29f857971dSopenharmony_ci#define LOG_TAG "UtilityTest"
30f857971dSopenharmony_ci
31f857971dSopenharmony_cinamespace OHOS {
32f857971dSopenharmony_cinamespace Msdp {
33f857971dSopenharmony_cinamespace DeviceStatus {
34f857971dSopenharmony_ciusing namespace testing::ext;
35f857971dSopenharmony_cinamespace {
36f857971dSopenharmony_ciconstexpr int32_t TIME_WAIT_FOR_OP_MS { 20 };
37f857971dSopenharmony_ciconst std::string STR_INFO { "abc12345" };
38f857971dSopenharmony_ciconst std::string STR_PREFIX { "abc" };
39f857971dSopenharmony_ciconst std::string NETWORK_ID = { "abcd123456ef" };
40f857971dSopenharmony_ciconst std::string EXPECT_ID = { "abcd1*****456ef" };
41f857971dSopenharmony_ciconst std::string COPY_DRAG_PATH { "/system/etc/device_status/drag_icon/Copy_Drag.svg" };
42f857971dSopenharmony_ciconstexpr int32_t FILE_SIZE_MAX { 0x5000 };
43f857971dSopenharmony_ciconstexpr size_t SIZE1 {10};
44f857971dSopenharmony_ciconstexpr size_t SIZE2 {20};
45f857971dSopenharmony_ci} // namespace
46f857971dSopenharmony_ci
47f857971dSopenharmony_ciclass UtilityTest : public testing::Test {
48f857971dSopenharmony_cipublic:
49f857971dSopenharmony_ci    void SetUp();
50f857971dSopenharmony_ci    void TearDown();
51f857971dSopenharmony_ci    static void SetUpTestCase();
52f857971dSopenharmony_ci    static void TearDownTestCase(void);
53f857971dSopenharmony_ci};
54f857971dSopenharmony_ci
55f857971dSopenharmony_civoid UtilityTest::SetUpTestCase() {}
56f857971dSopenharmony_ci
57f857971dSopenharmony_civoid UtilityTest::TearDownTestCase() {}
58f857971dSopenharmony_ci
59f857971dSopenharmony_civoid UtilityTest::SetUp() {}
60f857971dSopenharmony_ci
61f857971dSopenharmony_civoid UtilityTest::TearDown()
62f857971dSopenharmony_ci{
63f857971dSopenharmony_ci    std::this_thread::sleep_for(std::chrono::milliseconds(TIME_WAIT_FOR_OP_MS));
64f857971dSopenharmony_ci}
65f857971dSopenharmony_ci
66f857971dSopenharmony_ci/**
67f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_001
68f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
69f857971dSopenharmony_ci * @tc.type: FUNC
70f857971dSopenharmony_ci * @tc.require:
71f857971dSopenharmony_ci */
72f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_001, TestSize.Level1)
73f857971dSopenharmony_ci{
74f857971dSopenharmony_ci    CALL_TEST_DEBUG;
75f857971dSopenharmony_ci    std::string target = "0";
76f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
77f857971dSopenharmony_ci    ASSERT_TRUE(ret);
78f857971dSopenharmony_ci}
79f857971dSopenharmony_ci
80f857971dSopenharmony_ci/**
81f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_002
82f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
83f857971dSopenharmony_ci * @tc.type: FUNC
84f857971dSopenharmony_ci * @tc.require:
85f857971dSopenharmony_ci */
86f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_002, TestSize.Level1)
87f857971dSopenharmony_ci{
88f857971dSopenharmony_ci    CALL_TEST_DEBUG;
89f857971dSopenharmony_ci    std::string target = "123";
90f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
91f857971dSopenharmony_ci    ASSERT_TRUE(ret);
92f857971dSopenharmony_ci}
93f857971dSopenharmony_ci
94f857971dSopenharmony_ci/**
95f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_003
96f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
97f857971dSopenharmony_ci * @tc.type: FUNC
98f857971dSopenharmony_ci * @tc.require:
99f857971dSopenharmony_ci */
100f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_003, TestSize.Level1)
101f857971dSopenharmony_ci{
102f857971dSopenharmony_ci    CALL_TEST_DEBUG;
103f857971dSopenharmony_ci    std::string target = " 0";
104f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
105f857971dSopenharmony_ci    ASSERT_TRUE(ret);
106f857971dSopenharmony_ci}
107f857971dSopenharmony_ci
108f857971dSopenharmony_ci/**
109f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_004
110f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
111f857971dSopenharmony_ci * @tc.type: FUNC
112f857971dSopenharmony_ci * @tc.require:
113f857971dSopenharmony_ci */
114f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_004, TestSize.Level1)
115f857971dSopenharmony_ci{
116f857971dSopenharmony_ci    CALL_TEST_DEBUG;
117f857971dSopenharmony_ci    std::string target = "-0";
118f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
119f857971dSopenharmony_ci    ASSERT_TRUE(ret);
120f857971dSopenharmony_ci}
121f857971dSopenharmony_ci
122f857971dSopenharmony_ci/**
123f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_005
124f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
125f857971dSopenharmony_ci * @tc.type: FUNC
126f857971dSopenharmony_ci * @tc.require:
127f857971dSopenharmony_ci */
128f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_005, TestSize.Level1)
129f857971dSopenharmony_ci{
130f857971dSopenharmony_ci    CALL_TEST_DEBUG;
131f857971dSopenharmony_ci    std::string target = "-1";
132f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
133f857971dSopenharmony_ci    ASSERT_TRUE(ret);
134f857971dSopenharmony_ci}
135f857971dSopenharmony_ci
136f857971dSopenharmony_ci/**
137f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_006
138f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
139f857971dSopenharmony_ci * @tc.type: FUNC
140f857971dSopenharmony_ci * @tc.require:
141f857971dSopenharmony_ci */
142f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_006, TestSize.Level1)
143f857971dSopenharmony_ci{
144f857971dSopenharmony_ci    CALL_TEST_DEBUG;
145f857971dSopenharmony_ci    std::string target = "-10";
146f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
147f857971dSopenharmony_ci    ASSERT_TRUE(ret);
148f857971dSopenharmony_ci}
149f857971dSopenharmony_ci
150f857971dSopenharmony_ci/**
151f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_007
152f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
153f857971dSopenharmony_ci * @tc.type: FUNC
154f857971dSopenharmony_ci * @tc.require:
155f857971dSopenharmony_ci */
156f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_007, TestSize.Level1)
157f857971dSopenharmony_ci{
158f857971dSopenharmony_ci    CALL_TEST_DEBUG;
159f857971dSopenharmony_ci    std::string target = "123";
160f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
161f857971dSopenharmony_ci    ASSERT_TRUE(ret);
162f857971dSopenharmony_ci}
163f857971dSopenharmony_ci
164f857971dSopenharmony_ci/**
165f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_008
166f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
167f857971dSopenharmony_ci * @tc.type: FUNC
168f857971dSopenharmony_ci * @tc.require:
169f857971dSopenharmony_ci */
170f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_008, TestSize.Level1)
171f857971dSopenharmony_ci{
172f857971dSopenharmony_ci    CALL_TEST_DEBUG;
173f857971dSopenharmony_ci    std::string target = "-123";
174f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
175f857971dSopenharmony_ci    ASSERT_TRUE(ret);
176f857971dSopenharmony_ci}
177f857971dSopenharmony_ci
178f857971dSopenharmony_ci/**
179f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_009
180f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
181f857971dSopenharmony_ci * @tc.type: FUNC
182f857971dSopenharmony_ci * @tc.require:
183f857971dSopenharmony_ci */
184f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_009, TestSize.Level1)
185f857971dSopenharmony_ci{
186f857971dSopenharmony_ci    CALL_TEST_DEBUG;
187f857971dSopenharmony_ci    std::string target = "0123";
188f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
189f857971dSopenharmony_ci    ASSERT_FALSE(ret);
190f857971dSopenharmony_ci}
191f857971dSopenharmony_ci
192f857971dSopenharmony_ci/**
193f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_010
194f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
195f857971dSopenharmony_ci * @tc.type: FUNC
196f857971dSopenharmony_ci * @tc.require:
197f857971dSopenharmony_ci */
198f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_010, TestSize.Level1)
199f857971dSopenharmony_ci{
200f857971dSopenharmony_ci    CALL_TEST_DEBUG;
201f857971dSopenharmony_ci    std::string target = "A01";
202f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
203f857971dSopenharmony_ci    ASSERT_FALSE(ret);
204f857971dSopenharmony_ci}
205f857971dSopenharmony_ci
206f857971dSopenharmony_ci/**
207f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_011
208f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
209f857971dSopenharmony_ci * @tc.type: FUNC
210f857971dSopenharmony_ci * @tc.require:
211f857971dSopenharmony_ci */
212f857971dSopenharmony_ciHWTEST_F(UtilityTest,  UtityTest_IsInteger_011, TestSize.Level1)
213f857971dSopenharmony_ci{
214f857971dSopenharmony_ci    CALL_TEST_DEBUG;
215f857971dSopenharmony_ci    std::string target = "A-10";
216f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
217f857971dSopenharmony_ci    ASSERT_FALSE(ret);
218f857971dSopenharmony_ci}
219f857971dSopenharmony_ci
220f857971dSopenharmony_ci/**
221f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_012
222f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
223f857971dSopenharmony_ci * @tc.type: FUNC
224f857971dSopenharmony_ci * @tc.require:
225f857971dSopenharmony_ci */
226f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_012, TestSize.Level1)
227f857971dSopenharmony_ci{
228f857971dSopenharmony_ci    CALL_TEST_DEBUG;
229f857971dSopenharmony_ci    std::string target = " 123A";
230f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
231f857971dSopenharmony_ci    ASSERT_FALSE(ret);
232f857971dSopenharmony_ci}
233f857971dSopenharmony_ci
234f857971dSopenharmony_ci/**
235f857971dSopenharmony_ci * @tc.name: UtityTest_IsInteger_013
236f857971dSopenharmony_ci * @tc.desc: Checks whether a string is an integer.
237f857971dSopenharmony_ci * @tc.type: FUNC
238f857971dSopenharmony_ci * @tc.require:
239f857971dSopenharmony_ci */
240f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsInteger_013, TestSize.Level1)
241f857971dSopenharmony_ci{
242f857971dSopenharmony_ci    CALL_TEST_DEBUG;
243f857971dSopenharmony_ci    std::string target = " 123 A";
244f857971dSopenharmony_ci    bool ret = Utility::IsInteger(target);
245f857971dSopenharmony_ci    ASSERT_FALSE(ret);
246f857971dSopenharmony_ci}
247f857971dSopenharmony_ci
248f857971dSopenharmony_ci/**
249f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize1_001
250f857971dSopenharmony_ci * @tc.desc: Enter an existing file and read the length.
251f857971dSopenharmony_ci * @tc.type: FUNC
252f857971dSopenharmony_ci * @tc.require:
253f857971dSopenharmony_ci */
254f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize1_001, TestSize.Level1)
255f857971dSopenharmony_ci{
256f857971dSopenharmony_ci    CALL_TEST_DEBUG;
257f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(COPY_DRAG_PATH.c_str());
258f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
259f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
260f857971dSopenharmony_ci    } else {
261f857971dSopenharmony_ci        FI_HILOGI("%{public}d: File is %{public}s, and file size is %{public}zd.",
262f857971dSopenharmony_ci            __LINE__, COPY_DRAG_PATH.c_str(), fileSize);
263f857971dSopenharmony_ci    }
264f857971dSopenharmony_ci    EXPECT_GT(fileSize, 0);
265f857971dSopenharmony_ci}
266f857971dSopenharmony_ci
267f857971dSopenharmony_ci/**
268f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize1_002
269f857971dSopenharmony_ci * @tc.desc: Enter a nonexistent file and read the length.
270f857971dSopenharmony_ci * @tc.type: FUNC
271f857971dSopenharmony_ci * @tc.require:
272f857971dSopenharmony_ci */
273f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize1_002, TestSize.Level1)
274f857971dSopenharmony_ci{
275f857971dSopenharmony_ci    CALL_TEST_DEBUG;
276f857971dSopenharmony_ci    const char *filePath = "xxx/not_exist_file.txt";
277f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(filePath);
278f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
279f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
280f857971dSopenharmony_ci    }
281f857971dSopenharmony_ci    EXPECT_EQ(fileSize, 0);
282f857971dSopenharmony_ci}
283f857971dSopenharmony_ci
284f857971dSopenharmony_ci/**
285f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize1_003
286f857971dSopenharmony_ci * @tc.desc: Enter an empty string and read the length.
287f857971dSopenharmony_ci * @tc.type: FUNC
288f857971dSopenharmony_ci * @tc.require:
289f857971dSopenharmony_ci */
290f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize1_003, TestSize.Level1)
291f857971dSopenharmony_ci{
292f857971dSopenharmony_ci    CALL_TEST_DEBUG;
293f857971dSopenharmony_ci    const char *filePath = "";
294f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(filePath);
295f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
296f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
297f857971dSopenharmony_ci    }
298f857971dSopenharmony_ci    EXPECT_EQ(fileSize, 0);
299f857971dSopenharmony_ci}
300f857971dSopenharmony_ci
301f857971dSopenharmony_ci/**
302f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize1_004
303f857971dSopenharmony_ci * @tc.desc: Enter a null pointer and read the length.
304f857971dSopenharmony_ci * @tc.type: FUNC
305f857971dSopenharmony_ci * @tc.require:
306f857971dSopenharmony_ci */
307f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize1_004, TestSize.Level1)
308f857971dSopenharmony_ci{
309f857971dSopenharmony_ci    CALL_TEST_DEBUG;
310f857971dSopenharmony_ci    const char *filePath = nullptr;
311f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(filePath);
312f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
313f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
314f857971dSopenharmony_ci    }
315f857971dSopenharmony_ci    EXPECT_EQ(fileSize, 0);
316f857971dSopenharmony_ci}
317f857971dSopenharmony_ci
318f857971dSopenharmony_ci/**
319f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize2_001
320f857971dSopenharmony_ci * @tc.desc: Enter an existing file and read the length.
321f857971dSopenharmony_ci * @tc.type: FUNC
322f857971dSopenharmony_ci * @tc.require:
323f857971dSopenharmony_ci */
324f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize2_001, TestSize.Level1)
325f857971dSopenharmony_ci{
326f857971dSopenharmony_ci    CALL_TEST_DEBUG;
327f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(COPY_DRAG_PATH);
328f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
329f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
330f857971dSopenharmony_ci    } else {
331f857971dSopenharmony_ci        FI_HILOGI("%{public}d: File is %{public}s, and file size is %{public}zd.",
332f857971dSopenharmony_ci            __LINE__, COPY_DRAG_PATH.c_str(), fileSize);
333f857971dSopenharmony_ci    }
334f857971dSopenharmony_ci    EXPECT_GT(fileSize, 0);
335f857971dSopenharmony_ci}
336f857971dSopenharmony_ci
337f857971dSopenharmony_ci/**
338f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize2_002
339f857971dSopenharmony_ci * @tc.desc: Enter a nonexistent file and read the length.
340f857971dSopenharmony_ci * @tc.type: FUNC
341f857971dSopenharmony_ci * @tc.require:
342f857971dSopenharmony_ci */
343f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize2_002, TestSize.Level1)
344f857971dSopenharmony_ci{
345f857971dSopenharmony_ci    CALL_TEST_DEBUG;
346f857971dSopenharmony_ci    std::string filePath = "xxx/not_exist_file.txt";
347f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(filePath);
348f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
349f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
350f857971dSopenharmony_ci    }
351f857971dSopenharmony_ci    EXPECT_EQ(fileSize, 0);
352f857971dSopenharmony_ci}
353f857971dSopenharmony_ci
354f857971dSopenharmony_ci/**
355f857971dSopenharmony_ci * @tc.name: UtityTest_GetFileSize_003
356f857971dSopenharmony_ci * @tc.desc: Enter an empty string and read the length.
357f857971dSopenharmony_ci * @tc.type: FUNC
358f857971dSopenharmony_ci * @tc.require:
359f857971dSopenharmony_ci */
360f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetFileSize2_003, TestSize.Level1)
361f857971dSopenharmony_ci{
362f857971dSopenharmony_ci    CALL_TEST_DEBUG;
363f857971dSopenharmony_ci    std::string filePath = "";
364f857971dSopenharmony_ci    ssize_t fileSize = Utility::GetFileSize(filePath);
365f857971dSopenharmony_ci    if ((fileSize <= 0) || (fileSize > FILE_SIZE_MAX)) {
366f857971dSopenharmony_ci        FI_HILOGW("File size out of read range, filseSize: %{public}zd.", fileSize);
367f857971dSopenharmony_ci    }
368f857971dSopenharmony_ci    EXPECT_EQ(fileSize, 0);
369f857971dSopenharmony_ci}
370f857971dSopenharmony_ci
371f857971dSopenharmony_ci/**
372f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize1_001
373f857971dSopenharmony_ci * @tc.desc: Enter a normal 12-string network ID, anonymising the middle part to 6 '*' in addition to the first
374f857971dSopenharmony_ci *  and last 4 characters.
375f857971dSopenharmony_ci * @tc.type: FUNC
376f857971dSopenharmony_ci * @tc.require:
377f857971dSopenharmony_ci */
378f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize1_001, TestSize.Level1)
379f857971dSopenharmony_ci{
380f857971dSopenharmony_ci    CALL_TEST_DEBUG;
381f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
382f857971dSopenharmony_ci         __LINE__, NETWORK_ID.c_str(), Utility::Anonymize(NETWORK_ID).c_str());
383f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual(EXPECT_ID.c_str(), Utility::Anonymize(NETWORK_ID).c_str()));
384f857971dSopenharmony_ci}
385f857971dSopenharmony_ci
386f857971dSopenharmony_ci/**
387f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize1_002
388f857971dSopenharmony_ci * @tc.desc: Enter an empty network ID string, anonymized by 6 digits.
389f857971dSopenharmony_ci * @tc.type: FUNC
390f857971dSopenharmony_ci * @tc.require:
391f857971dSopenharmony_ci */
392f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize1_002, TestSize.Level1)
393f857971dSopenharmony_ci{
394f857971dSopenharmony_ci    CALL_TEST_DEBUG;
395f857971dSopenharmony_ci    const char *id = "";
396f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
397f857971dSopenharmony_ci        __LINE__, id, Utility::Anonymize(id).c_str());
398f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("**********", Utility::Anonymize(id).c_str()));
399f857971dSopenharmony_ci}
400f857971dSopenharmony_ci
401f857971dSopenharmony_ci/**
402f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize1_003
403f857971dSopenharmony_ci * @tc.desc: Enter a network ID string less than 12 in length, anonymized to 6 *.
404f857971dSopenharmony_ci * @tc.type: FUNC
405f857971dSopenharmony_ci * @tc.require:
406f857971dSopenharmony_ci */
407f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize1_003, TestSize.Level1)
408f857971dSopenharmony_ci{
409f857971dSopenharmony_ci    CALL_TEST_DEBUG;
410f857971dSopenharmony_ci    const char *id = "abcd123456";
411f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
412f857971dSopenharmony_ci        __LINE__, id, Utility::Anonymize(id).c_str());
413f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("abcd1*****23456", Utility::Anonymize(id).c_str()));
414f857971dSopenharmony_ci}
415f857971dSopenharmony_ci
416f857971dSopenharmony_ci/**
417f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize1_004
418f857971dSopenharmony_ci * @tc.desc: Anonymisation of strings longer than 32 characters
419f857971dSopenharmony_ci * @tc.type: FUNC
420f857971dSopenharmony_ci * @tc.require:
421f857971dSopenharmony_ci */
422f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize1_004, TestSize.Level1)
423f857971dSopenharmony_ci{
424f857971dSopenharmony_ci    CALL_TEST_DEBUG;
425f857971dSopenharmony_ci    const char *id = "abcd123456efghijklmnopqrstuvwxyzabcd";
426f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
427f857971dSopenharmony_ci        __LINE__, id, Utility::Anonymize(id).c_str());
428f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("abcd1*****zabcd", Utility::Anonymize(id).c_str()));
429f857971dSopenharmony_ci}
430f857971dSopenharmony_ci
431f857971dSopenharmony_ci/**
432f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize1_005
433f857971dSopenharmony_ci * @tc.desc: Enter null pointer network ID, anonymized to 6 '*'.
434f857971dSopenharmony_ci * @tc.type: FUNC
435f857971dSopenharmony_ci * @tc.require:
436f857971dSopenharmony_ci */
437f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize1_005, TestSize.Level1)
438f857971dSopenharmony_ci{
439f857971dSopenharmony_ci    CALL_TEST_DEBUG;
440f857971dSopenharmony_ci    const char *id = nullptr;
441f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
442f857971dSopenharmony_ci        __LINE__, id, Utility::Anonymize(id).c_str());
443f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("**********", Utility::Anonymize(id).c_str()));
444f857971dSopenharmony_ci}
445f857971dSopenharmony_ci
446f857971dSopenharmony_ci/**
447f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize2_001
448f857971dSopenharmony_ci * @tc.desc: Enter a normal 12-string network ID, anonymising the middle part to 6 '*' in addition to the first
449f857971dSopenharmony_ci *  and last 4 characters.
450f857971dSopenharmony_ci * @tc.type: FUNC
451f857971dSopenharmony_ci * @tc.require:
452f857971dSopenharmony_ci */
453f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize2_001, TestSize.Level1)
454f857971dSopenharmony_ci{
455f857971dSopenharmony_ci    CALL_TEST_DEBUG;
456f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
457f857971dSopenharmony_ci        __LINE__, NETWORK_ID.c_str(), Utility::Anonymize(NETWORK_ID).c_str());
458f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual(EXPECT_ID.c_str(), Utility::Anonymize(NETWORK_ID).c_str()));
459f857971dSopenharmony_ci}
460f857971dSopenharmony_ci
461f857971dSopenharmony_ci/**
462f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize2_002
463f857971dSopenharmony_ci * @tc.desc: Enter an empty network ID string, anonymized by 6 digits.
464f857971dSopenharmony_ci * @tc.type: FUNC
465f857971dSopenharmony_ci * @tc.require:
466f857971dSopenharmony_ci */
467f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize2_002, TestSize.Level1)
468f857971dSopenharmony_ci{
469f857971dSopenharmony_ci    CALL_TEST_DEBUG;
470f857971dSopenharmony_ci    std::string id = "";
471f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
472f857971dSopenharmony_ci        __LINE__, id.c_str(), Utility::Anonymize(id).c_str());
473f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("**********", Utility::Anonymize(id).c_str()));
474f857971dSopenharmony_ci}
475f857971dSopenharmony_ci
476f857971dSopenharmony_ci/**
477f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize2_003
478f857971dSopenharmony_ci * @tc.desc: Enter a network ID string less than 12 in length, anonymized to 6 *.
479f857971dSopenharmony_ci * @tc.type: FUNC
480f857971dSopenharmony_ci * @tc.require:
481f857971dSopenharmony_ci */
482f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize2_003, TestSize.Level1)
483f857971dSopenharmony_ci{
484f857971dSopenharmony_ci    CALL_TEST_DEBUG;
485f857971dSopenharmony_ci    std::string id = "abcd123456";
486f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
487f857971dSopenharmony_ci        __LINE__, id.c_str(), Utility::Anonymize(id).c_str());
488f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("abcd1*****23456", Utility::Anonymize(id).c_str()));
489f857971dSopenharmony_ci}
490f857971dSopenharmony_ci
491f857971dSopenharmony_ci/**
492f857971dSopenharmony_ci * @tc.name: UtityTest_Anonymize2_004
493f857971dSopenharmony_ci * @tc.desc: Anonymisation of strings longer than 32 characters.
494f857971dSopenharmony_ci * @tc.type: FUNC
495f857971dSopenharmony_ci * @tc.require:
496f857971dSopenharmony_ci */
497f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_Anonymize2_004, TestSize.Level1)
498f857971dSopenharmony_ci{
499f857971dSopenharmony_ci    CALL_TEST_DEBUG;
500f857971dSopenharmony_ci    std::string id = "abcd123456efghijklmnopqrstuvwxyzabcd";
501f857971dSopenharmony_ci    FI_HILOGI("%{public}d: Before anonymous processing, it is %{public}s, and after processing, it is %{public}s.",
502f857971dSopenharmony_ci        __LINE__, id.c_str(), Utility::Anonymize(id).c_str());
503f857971dSopenharmony_ci    ASSERT_NO_FATAL_FAILURE(Utility::IsEqual("abcd1*****zabcd", Utility::Anonymize(id).c_str()));
504f857971dSopenharmony_ci}
505f857971dSopenharmony_ci
506f857971dSopenharmony_ci/**
507f857971dSopenharmony_ci * @tc.name: UtityTest_DoesFileExist_001
508f857971dSopenharmony_ci * @tc.desc: Check the file is or not exist
509f857971dSopenharmony_ci * @tc.type: FUNC
510f857971dSopenharmony_ci * @tc.require:
511f857971dSopenharmony_ci */
512f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_DoesFileExist_001, TestSize.Level1)
513f857971dSopenharmony_ci{
514f857971dSopenharmony_ci    CALL_TEST_DEBUG;
515f857971dSopenharmony_ci    const char *filePath = "/system/etc/device_status/drag_icon/Copy_Drag.svg";
516f857971dSopenharmony_ci    bool isExist = Utility::DoesFileExist(filePath);
517f857971dSopenharmony_ci    ASSERT_TRUE(isExist);
518f857971dSopenharmony_ci}
519f857971dSopenharmony_ci
520f857971dSopenharmony_ci/**
521f857971dSopenharmony_ci * @tc.name: UtityTest_DoesFileExist_002
522f857971dSopenharmony_ci * @tc.desc: Check the file is or not exist
523f857971dSopenharmony_ci * @tc.type: FUNC
524f857971dSopenharmony_ci * @tc.require:
525f857971dSopenharmony_ci */
526f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_DoesFileExist_002, TestSize.Level1)
527f857971dSopenharmony_ci{
528f857971dSopenharmony_ci    CALL_TEST_DEBUG;
529f857971dSopenharmony_ci    const char *filePath = "";
530f857971dSopenharmony_ci    bool isExist = Utility::DoesFileExist(filePath);
531f857971dSopenharmony_ci    ASSERT_FALSE(isExist);
532f857971dSopenharmony_ci}
533f857971dSopenharmony_ci
534f857971dSopenharmony_ci/**
535f857971dSopenharmony_ci * @tc.name: UtityTest_DoesFileExist_003
536f857971dSopenharmony_ci * @tc.desc: Check the file is or not exist
537f857971dSopenharmony_ci * @tc.type: FUNC
538f857971dSopenharmony_ci * @tc.require:
539f857971dSopenharmony_ci */
540f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_DoesFileExist_003, TestSize.Level1)
541f857971dSopenharmony_ci{
542f857971dSopenharmony_ci    CALL_TEST_DEBUG;
543f857971dSopenharmony_ci    const char *filePath = "xxx/not_exist_file.txt";
544f857971dSopenharmony_ci    bool isExist = Utility::DoesFileExist(filePath);
545f857971dSopenharmony_ci    ASSERT_FALSE(isExist);
546f857971dSopenharmony_ci}
547f857971dSopenharmony_ci
548f857971dSopenharmony_ci/**
549f857971dSopenharmony_ci * @tc.name: UtityTest_DoesFileExist_004
550f857971dSopenharmony_ci * @tc.desc: Check the file is or not exist
551f857971dSopenharmony_ci * @tc.type: FUNC
552f857971dSopenharmony_ci * @tc.require:
553f857971dSopenharmony_ci */
554f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_DoesFileExist_004, TestSize.Level1)
555f857971dSopenharmony_ci{
556f857971dSopenharmony_ci    CALL_TEST_DEBUG;
557f857971dSopenharmony_ci    const char *filePath = nullptr;
558f857971dSopenharmony_ci    bool isExist = Utility::DoesFileExist(filePath);
559f857971dSopenharmony_ci    ASSERT_FALSE(isExist);
560f857971dSopenharmony_ci}
561f857971dSopenharmony_ci
562f857971dSopenharmony_ci/**
563f857971dSopenharmony_ci * @tc.name: UtityTest_IsEmpty_001
564f857971dSopenharmony_ci * @tc.desc: Check string is or not empty
565f857971dSopenharmony_ci * @tc.type: FUNC
566f857971dSopenharmony_ci * @tc.require:
567f857971dSopenharmony_ci */
568f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEmpty_001, TestSize.Level1)
569f857971dSopenharmony_ci{
570f857971dSopenharmony_ci    CALL_TEST_DEBUG;
571f857971dSopenharmony_ci    const char *str = "isempty";
572f857971dSopenharmony_ci    bool isEmpty = Utility::IsEmpty(str);
573f857971dSopenharmony_ci    ASSERT_FALSE(isEmpty);
574f857971dSopenharmony_ci}
575f857971dSopenharmony_ci
576f857971dSopenharmony_ci/**
577f857971dSopenharmony_ci * @tc.name: UtityTest_IsEmpty_002
578f857971dSopenharmony_ci * @tc.desc: Check string is or not empty
579f857971dSopenharmony_ci * @tc.type: FUNC
580f857971dSopenharmony_ci * @tc.require:
581f857971dSopenharmony_ci */
582f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEmpty_002, TestSize.Level1)
583f857971dSopenharmony_ci{
584f857971dSopenharmony_ci    CALL_TEST_DEBUG;
585f857971dSopenharmony_ci    const char *str = "";
586f857971dSopenharmony_ci    bool isEmpty = Utility::IsEmpty(str);
587f857971dSopenharmony_ci    ASSERT_TRUE(isEmpty);
588f857971dSopenharmony_ci}
589f857971dSopenharmony_ci
590f857971dSopenharmony_ci/**
591f857971dSopenharmony_ci * @tc.name: UtityTest_IsEmpty_003
592f857971dSopenharmony_ci * @tc.desc: Check string is or not empty
593f857971dSopenharmony_ci * @tc.type: FUNC
594f857971dSopenharmony_ci * @tc.require:
595f857971dSopenharmony_ci */
596f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEmpty_003, TestSize.Level1)
597f857971dSopenharmony_ci{
598f857971dSopenharmony_ci    CALL_TEST_DEBUG;
599f857971dSopenharmony_ci    const char *str = nullptr;
600f857971dSopenharmony_ci    bool isEmpty = Utility::IsEmpty(str);
601f857971dSopenharmony_ci    ASSERT_TRUE(isEmpty);
602f857971dSopenharmony_ci}
603f857971dSopenharmony_ci
604f857971dSopenharmony_ci/**
605f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_001
606f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
607f857971dSopenharmony_ci * @tc.type: FUNC
608f857971dSopenharmony_ci * @tc.require:
609f857971dSopenharmony_ci */
610f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_001, TestSize.Level1)
611f857971dSopenharmony_ci{
612f857971dSopenharmony_ci    CALL_TEST_DEBUG;
613f857971dSopenharmony_ci    const char *str1 = "abcde";
614f857971dSopenharmony_ci    const char *str2 = "abcde";
615f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
616f857971dSopenharmony_ci    ASSERT_TRUE(isEqual);
617f857971dSopenharmony_ci}
618f857971dSopenharmony_ci
619f857971dSopenharmony_ci/**
620f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_002
621f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
622f857971dSopenharmony_ci * @tc.type: FUNC
623f857971dSopenharmony_ci * @tc.require:
624f857971dSopenharmony_ci */
625f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_002, TestSize.Level1)
626f857971dSopenharmony_ci{
627f857971dSopenharmony_ci    CALL_TEST_DEBUG;
628f857971dSopenharmony_ci    const char *str1 = "abcde";
629f857971dSopenharmony_ci    const char *str2 = "edcba";
630f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
631f857971dSopenharmony_ci    ASSERT_FALSE(isEqual);
632f857971dSopenharmony_ci}
633f857971dSopenharmony_ci
634f857971dSopenharmony_ci/**
635f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_003
636f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
637f857971dSopenharmony_ci * @tc.type: FUNC
638f857971dSopenharmony_ci * @tc.require:
639f857971dSopenharmony_ci */
640f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_003, TestSize.Level1)
641f857971dSopenharmony_ci{
642f857971dSopenharmony_ci    CALL_TEST_DEBUG;
643f857971dSopenharmony_ci    const char *str1 = "";
644f857971dSopenharmony_ci    const char *str2 = "";
645f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
646f857971dSopenharmony_ci    ASSERT_TRUE(isEqual);
647f857971dSopenharmony_ci}
648f857971dSopenharmony_ci
649f857971dSopenharmony_ci/**
650f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_004
651f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
652f857971dSopenharmony_ci * @tc.type: FUNC
653f857971dSopenharmony_ci * @tc.require:
654f857971dSopenharmony_ci */
655f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_004, TestSize.Level1)
656f857971dSopenharmony_ci{
657f857971dSopenharmony_ci    CALL_TEST_DEBUG;
658f857971dSopenharmony_ci    const char *str1 = "abcde";
659f857971dSopenharmony_ci    const char *str2 = "";
660f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
661f857971dSopenharmony_ci    ASSERT_FALSE(isEqual);
662f857971dSopenharmony_ci}
663f857971dSopenharmony_ci
664f857971dSopenharmony_ci/**
665f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_005
666f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
667f857971dSopenharmony_ci * @tc.type: FUNC
668f857971dSopenharmony_ci * @tc.require:
669f857971dSopenharmony_ci */
670f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_005, TestSize.Level1)
671f857971dSopenharmony_ci{
672f857971dSopenharmony_ci    CALL_TEST_DEBUG;
673f857971dSopenharmony_ci    const char *str1 = "";
674f857971dSopenharmony_ci    const char *str2 = nullptr;
675f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
676f857971dSopenharmony_ci    ASSERT_TRUE(isEqual);
677f857971dSopenharmony_ci}
678f857971dSopenharmony_ci
679f857971dSopenharmony_ci/**
680f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_006
681f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
682f857971dSopenharmony_ci * @tc.type: FUNC
683f857971dSopenharmony_ci * @tc.require:
684f857971dSopenharmony_ci */
685f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_006, TestSize.Level1)
686f857971dSopenharmony_ci{
687f857971dSopenharmony_ci    CALL_TEST_DEBUG;
688f857971dSopenharmony_ci    const char *str1 = nullptr;
689f857971dSopenharmony_ci    const char *str2 = nullptr;
690f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
691f857971dSopenharmony_ci    ASSERT_TRUE(isEqual);
692f857971dSopenharmony_ci}
693f857971dSopenharmony_ci
694f857971dSopenharmony_ci/**
695f857971dSopenharmony_ci * @tc.name: UtityTest_IsEqual_007
696f857971dSopenharmony_ci * @tc.desc: Check string is or not equal
697f857971dSopenharmony_ci * @tc.type: FUNC
698f857971dSopenharmony_ci * @tc.require:
699f857971dSopenharmony_ci */
700f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_IsEqual_007, TestSize.Level1)
701f857971dSopenharmony_ci{
702f857971dSopenharmony_ci    CALL_TEST_DEBUG;
703f857971dSopenharmony_ci    const char *str1 = "abcde";
704f857971dSopenharmony_ci    const char *str2 = nullptr;
705f857971dSopenharmony_ci    bool isEqual = Utility::IsEqual(str1, str2);
706f857971dSopenharmony_ci    ASSERT_FALSE(isEqual);
707f857971dSopenharmony_ci}
708f857971dSopenharmony_ci
709f857971dSopenharmony_ci/**
710f857971dSopenharmony_ci * @tc.name: UtityTest_ConcatAsString_001
711f857971dSopenharmony_ci * @tc.desc: Splicing strings
712f857971dSopenharmony_ci * @tc.type: FUNC
713f857971dSopenharmony_ci * @tc.require:
714f857971dSopenharmony_ci */
715f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_ConcatAsString_001, TestSize.Level1)
716f857971dSopenharmony_ci{
717f857971dSopenharmony_ci    CALL_TEST_DEBUG;
718f857971dSopenharmony_ci    std::string str1 = "abcde";
719f857971dSopenharmony_ci    std::string str = Utility::ConcatAsString(str1);
720f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), str1.c_str());
721f857971dSopenharmony_ci}
722f857971dSopenharmony_ci
723f857971dSopenharmony_ci/**
724f857971dSopenharmony_ci * @tc.name: UtityTest_ConcatAsString_002
725f857971dSopenharmony_ci * @tc.desc: Splicing strings
726f857971dSopenharmony_ci * @tc.type: FUNC
727f857971dSopenharmony_ci * @tc.require:
728f857971dSopenharmony_ci */
729f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_ConcatAsString_002, TestSize.Level1)
730f857971dSopenharmony_ci{
731f857971dSopenharmony_ci    CALL_TEST_DEBUG;
732f857971dSopenharmony_ci    std::string str1 = "abcde";
733f857971dSopenharmony_ci    std::string str2 = "fghij";
734f857971dSopenharmony_ci    std::string str = Utility::ConcatAsString(str1, str2);
735f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcdefghij");
736f857971dSopenharmony_ci}
737f857971dSopenharmony_ci
738f857971dSopenharmony_ci/**
739f857971dSopenharmony_ci * @tc.name: UtityTest_ConcatAsString_003
740f857971dSopenharmony_ci * @tc.desc: Splicing strings
741f857971dSopenharmony_ci * @tc.type: FUNC
742f857971dSopenharmony_ci * @tc.require:
743f857971dSopenharmony_ci */
744f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_ConcatAsString_003, TestSize.Level1)
745f857971dSopenharmony_ci{
746f857971dSopenharmony_ci    CALL_TEST_DEBUG;
747f857971dSopenharmony_ci    std::string str1 = "abcde";
748f857971dSopenharmony_ci    std::string str2 = "fghij";
749f857971dSopenharmony_ci    std::string str3 = "klmno";
750f857971dSopenharmony_ci    std::string str = Utility::ConcatAsString(str1, str2, str3);
751f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcdefghijklmno");
752f857971dSopenharmony_ci}
753f857971dSopenharmony_ci
754f857971dSopenharmony_ci/**
755f857971dSopenharmony_ci * @tc.name: UtityTest_ConcatAsString_004
756f857971dSopenharmony_ci * @tc.desc: Splicing strings
757f857971dSopenharmony_ci * @tc.type: FUNC
758f857971dSopenharmony_ci * @tc.require:
759f857971dSopenharmony_ci */
760f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_ConcatAsString_004, TestSize.Level1)
761f857971dSopenharmony_ci{
762f857971dSopenharmony_ci    CALL_TEST_DEBUG;
763f857971dSopenharmony_ci    std::string str1 = "abcde";
764f857971dSopenharmony_ci    std::string str2 = "fghij";
765f857971dSopenharmony_ci    std::string str3 = "";
766f857971dSopenharmony_ci    std::string str = Utility::ConcatAsString(str1, str2, str3);
767f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcdefghij");
768f857971dSopenharmony_ci}
769f857971dSopenharmony_ci
770f857971dSopenharmony_ci/**
771f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveSpace_001
772f857971dSopenharmony_ci * @tc.desc: Remove string space
773f857971dSopenharmony_ci * @tc.type: FUNC
774f857971dSopenharmony_ci * @tc.require:
775f857971dSopenharmony_ci */
776f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveSpace_001, TestSize.Level1)
777f857971dSopenharmony_ci{
778f857971dSopenharmony_ci    CALL_TEST_DEBUG;
779f857971dSopenharmony_ci    std::string str = "abc de";
780f857971dSopenharmony_ci    Utility::RemoveSpace(str);
781f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcde");
782f857971dSopenharmony_ci}
783f857971dSopenharmony_ci
784f857971dSopenharmony_ci/**
785f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveSpace_002
786f857971dSopenharmony_ci * @tc.desc: Remove string space
787f857971dSopenharmony_ci * @tc.type: FUNC
788f857971dSopenharmony_ci * @tc.require:
789f857971dSopenharmony_ci */
790f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveSpace_002, TestSize.Level1)
791f857971dSopenharmony_ci{
792f857971dSopenharmony_ci    CALL_TEST_DEBUG;
793f857971dSopenharmony_ci    std::string str = "abcde";
794f857971dSopenharmony_ci    Utility::RemoveSpace(str);
795f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcde");
796f857971dSopenharmony_ci}
797f857971dSopenharmony_ci
798f857971dSopenharmony_ci/**
799f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveSpace_003
800f857971dSopenharmony_ci * @tc.desc: Remove string space
801f857971dSopenharmony_ci * @tc.type: FUNC
802f857971dSopenharmony_ci * @tc.require:
803f857971dSopenharmony_ci */
804f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveSpace_003, TestSize.Level1)
805f857971dSopenharmony_ci{
806f857971dSopenharmony_ci    CALL_TEST_DEBUG;
807f857971dSopenharmony_ci    std::string str = " abcde";
808f857971dSopenharmony_ci    Utility::RemoveSpace(str);
809f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcde");
810f857971dSopenharmony_ci}
811f857971dSopenharmony_ci
812f857971dSopenharmony_ci/**
813f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveSpace_004
814f857971dSopenharmony_ci * @tc.desc: Remove string space
815f857971dSopenharmony_ci * @tc.type: FUNC
816f857971dSopenharmony_ci * @tc.require:
817f857971dSopenharmony_ci */
818f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveSpace_004, TestSize.Level1)
819f857971dSopenharmony_ci{
820f857971dSopenharmony_ci    CALL_TEST_DEBUG;
821f857971dSopenharmony_ci    std::string str = "abcde ";
822f857971dSopenharmony_ci    Utility::RemoveSpace(str);
823f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "abcde");
824f857971dSopenharmony_ci}
825f857971dSopenharmony_ci
826f857971dSopenharmony_ci/**
827f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveSpace_005
828f857971dSopenharmony_ci * @tc.desc: Remove string space
829f857971dSopenharmony_ci * @tc.type: FUNC
830f857971dSopenharmony_ci * @tc.require:
831f857971dSopenharmony_ci */
832f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveSpace_005, TestSize.Level1)
833f857971dSopenharmony_ci{
834f857971dSopenharmony_ci    CALL_TEST_DEBUG;
835f857971dSopenharmony_ci    std::string str = "    ";
836f857971dSopenharmony_ci    Utility::RemoveSpace(str);
837f857971dSopenharmony_ci    EXPECT_STREQ(str.c_str(), "");
838f857971dSopenharmony_ci}
839f857971dSopenharmony_ci
840f857971dSopenharmony_ci/**
841f857971dSopenharmony_ci * @tc.name: UtityTest_CopyNulstr_001
842f857971dSopenharmony_ci * @tc.desc: Copy string to target
843f857971dSopenharmony_ci * @tc.type: FUNC
844f857971dSopenharmony_ci * @tc.require:
845f857971dSopenharmony_ci */
846f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_CopyNulstr_001, TestSize.Level1)
847f857971dSopenharmony_ci{
848f857971dSopenharmony_ci    CALL_TEST_DEBUG;
849f857971dSopenharmony_ci    char dest[] = "0";
850f857971dSopenharmony_ci    size_t size = SIZE1;
851f857971dSopenharmony_ci    char src[] = "abcdefghijklmnopqrst";
852f857971dSopenharmony_ci    size_t len = Utility::CopyNulstr(dest, size, src);
853f857971dSopenharmony_ci    EXPECT_EQ(len, size - 1);
854f857971dSopenharmony_ci}
855f857971dSopenharmony_ci
856f857971dSopenharmony_ci/**
857f857971dSopenharmony_ci * @tc.name: UtityTest_CopyNulstr_002
858f857971dSopenharmony_ci * @tc.desc: Copy string to target
859f857971dSopenharmony_ci * @tc.type: FUNC
860f857971dSopenharmony_ci * @tc.require:
861f857971dSopenharmony_ci */
862f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_CopyNulstr_002, TestSize.Level1)
863f857971dSopenharmony_ci{
864f857971dSopenharmony_ci    CALL_TEST_DEBUG;
865f857971dSopenharmony_ci    char *dest = nullptr;
866f857971dSopenharmony_ci    size_t size = SIZE2;
867f857971dSopenharmony_ci    char *src = nullptr;
868f857971dSopenharmony_ci    size_t len = Utility::CopyNulstr(dest, size, src);
869f857971dSopenharmony_ci    EXPECT_EQ(len, 0);
870f857971dSopenharmony_ci}
871f857971dSopenharmony_ci
872f857971dSopenharmony_ci/**
873f857971dSopenharmony_ci * @tc.name: UtityTest_CopyNulstr_003
874f857971dSopenharmony_ci * @tc.desc: Copy string to target
875f857971dSopenharmony_ci * @tc.type: FUNC
876f857971dSopenharmony_ci * @tc.require:
877f857971dSopenharmony_ci */
878f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_CopyNulstr_003, TestSize.Level1)
879f857971dSopenharmony_ci{
880f857971dSopenharmony_ci    CALL_TEST_DEBUG;
881f857971dSopenharmony_ci    char dest[] = {0};
882f857971dSopenharmony_ci    size_t size = SIZE2;
883f857971dSopenharmony_ci    char *src = nullptr;
884f857971dSopenharmony_ci    size_t len = Utility::CopyNulstr(dest, size, src);
885f857971dSopenharmony_ci    EXPECT_EQ(len, 0);
886f857971dSopenharmony_ci}
887f857971dSopenharmony_ci
888f857971dSopenharmony_ci/**
889f857971dSopenharmony_ci * @tc.name: UtityTest_CopyNulstr_004
890f857971dSopenharmony_ci * @tc.desc: Copy string to target
891f857971dSopenharmony_ci * @tc.type: FUNC
892f857971dSopenharmony_ci * @tc.require:
893f857971dSopenharmony_ci */
894f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_CopyNulstr_004, TestSize.Level1)
895f857971dSopenharmony_ci{
896f857971dSopenharmony_ci    CALL_TEST_DEBUG;
897f857971dSopenharmony_ci    char *dest = nullptr;
898f857971dSopenharmony_ci    size_t size = SIZE2;
899f857971dSopenharmony_ci    char src[] = "dadaaaaaaaddsadada";
900f857971dSopenharmony_ci    size_t len = Utility::CopyNulstr(dest, size, src);
901f857971dSopenharmony_ci    EXPECT_EQ(len, 0);
902f857971dSopenharmony_ci}
903f857971dSopenharmony_ci
904f857971dSopenharmony_ci/**
905f857971dSopenharmony_ci * @tc.name: UtityTest_GetSysClockTime_001
906f857971dSopenharmony_ci * @tc.desc: Get system time
907f857971dSopenharmony_ci * @tc.type: FUNC
908f857971dSopenharmony_ci * @tc.require:
909f857971dSopenharmony_ci */
910f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_GetSysClockTime_001, TestSize.Level1)
911f857971dSopenharmony_ci{
912f857971dSopenharmony_ci    CALL_TEST_DEBUG;
913f857971dSopenharmony_ci    int64_t time = Utility::GetSysClockTime();
914f857971dSopenharmony_ci    EXPECT_NE(time, 0);
915f857971dSopenharmony_ci}
916f857971dSopenharmony_ci
917f857971dSopenharmony_ci/**
918f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith1_001
919f857971dSopenharmony_ci * @tc.desc:
920f857971dSopenharmony_ci * @tc.type: FUNC
921f857971dSopenharmony_ci * @tc.require:
922f857971dSopenharmony_ci */
923f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith1_001, TestSize.Level1)
924f857971dSopenharmony_ci{
925f857971dSopenharmony_ci    CALL_TEST_DEBUG;
926f857971dSopenharmony_ci    const char *exampleStr = "HelloWorld";
927f857971dSopenharmony_ci    const char *examplePrefix = "Hello";
928f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
929f857971dSopenharmony_ci    ASSERT_TRUE(ret);
930f857971dSopenharmony_ci}
931f857971dSopenharmony_ci
932f857971dSopenharmony_ci/**
933f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith1_002
934f857971dSopenharmony_ci * @tc.desc:
935f857971dSopenharmony_ci * @tc.type: FUNC
936f857971dSopenharmony_ci * @tc.require:
937f857971dSopenharmony_ci */
938f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith1_002, TestSize.Level1)
939f857971dSopenharmony_ci{
940f857971dSopenharmony_ci    CALL_TEST_DEBUG;
941f857971dSopenharmony_ci    const char *exampleStr = "HelloWorld";
942f857971dSopenharmony_ci    const char *examplePrefix = "HelloWorld";
943f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
944f857971dSopenharmony_ci    ASSERT_TRUE(ret);
945f857971dSopenharmony_ci}
946f857971dSopenharmony_ci
947f857971dSopenharmony_ci/**
948f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith1_003
949f857971dSopenharmony_ci * @tc.desc:
950f857971dSopenharmony_ci * @tc.type: FUNC
951f857971dSopenharmony_ci * @tc.require:
952f857971dSopenharmony_ci */
953f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith1_003, TestSize.Level1)
954f857971dSopenharmony_ci{
955f857971dSopenharmony_ci    CALL_TEST_DEBUG;
956f857971dSopenharmony_ci    const char *exampleStr = "HelloWorld";
957f857971dSopenharmony_ci    const char *examplePrefix = "";
958f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
959f857971dSopenharmony_ci    ASSERT_FALSE(ret);
960f857971dSopenharmony_ci}
961f857971dSopenharmony_ci
962f857971dSopenharmony_ci/**
963f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith1_004
964f857971dSopenharmony_ci * @tc.desc:
965f857971dSopenharmony_ci * @tc.type: FUNC
966f857971dSopenharmony_ci * @tc.require:
967f857971dSopenharmony_ci */
968f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith1_004, TestSize.Level1)
969f857971dSopenharmony_ci{
970f857971dSopenharmony_ci    CALL_TEST_DEBUG;
971f857971dSopenharmony_ci    const char *exampleStr = "Hello";
972f857971dSopenharmony_ci    const char *examplePrefix = "HelloWorld";
973f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
974f857971dSopenharmony_ci    ASSERT_FALSE(ret);
975f857971dSopenharmony_ci}
976f857971dSopenharmony_ci
977f857971dSopenharmony_ci/**
978f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith1_005
979f857971dSopenharmony_ci * @tc.desc:
980f857971dSopenharmony_ci * @tc.type: FUNC
981f857971dSopenharmony_ci * @tc.require:
982f857971dSopenharmony_ci */
983f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith1_005, TestSize.Level1)
984f857971dSopenharmony_ci{
985f857971dSopenharmony_ci    CALL_TEST_DEBUG;
986f857971dSopenharmony_ci    const char *exampleStr = "";
987f857971dSopenharmony_ci    const char *examplePrefix = "HelloWorld";
988f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
989f857971dSopenharmony_ci    ASSERT_FALSE(ret);
990f857971dSopenharmony_ci}
991f857971dSopenharmony_ci
992f857971dSopenharmony_ci/**
993f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith1_006
994f857971dSopenharmony_ci * @tc.desc:
995f857971dSopenharmony_ci * @tc.type: FUNC
996f857971dSopenharmony_ci * @tc.require:
997f857971dSopenharmony_ci */
998f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith1_006, TestSize.Level1)
999f857971dSopenharmony_ci{
1000f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1001f857971dSopenharmony_ci    const char *exampleStr = "";
1002f857971dSopenharmony_ci    const char *examplePrefix = "";
1003f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1004f857971dSopenharmony_ci    ASSERT_FALSE(ret);
1005f857971dSopenharmony_ci}
1006f857971dSopenharmony_ci
1007f857971dSopenharmony_ci/**
1008f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith2_001
1009f857971dSopenharmony_ci * @tc.desc:
1010f857971dSopenharmony_ci * @tc.type: FUNC
1011f857971dSopenharmony_ci * @tc.require:
1012f857971dSopenharmony_ci */
1013f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith2_001, TestSize.Level1)
1014f857971dSopenharmony_ci{
1015f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1016f857971dSopenharmony_ci    std::string exampleStr = "abc12345";
1017f857971dSopenharmony_ci    std::string examplePrefix = "abc";
1018f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1019f857971dSopenharmony_ci    ASSERT_TRUE(ret);
1020f857971dSopenharmony_ci}
1021f857971dSopenharmony_ci
1022f857971dSopenharmony_ci/**
1023f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith2_002
1024f857971dSopenharmony_ci * @tc.desc:
1025f857971dSopenharmony_ci * @tc.type: FUNC
1026f857971dSopenharmony_ci * @tc.require:
1027f857971dSopenharmony_ci */
1028f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith2_002, TestSize.Level1)
1029f857971dSopenharmony_ci{
1030f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1031f857971dSopenharmony_ci    std::string exampleStr = "abc";
1032f857971dSopenharmony_ci    std::string examplePrefix = "abc";
1033f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1034f857971dSopenharmony_ci    ASSERT_TRUE(ret);
1035f857971dSopenharmony_ci}
1036f857971dSopenharmony_ci
1037f857971dSopenharmony_ci/**
1038f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith2_003
1039f857971dSopenharmony_ci * @tc.desc:
1040f857971dSopenharmony_ci * @tc.type: FUNC
1041f857971dSopenharmony_ci * @tc.require:
1042f857971dSopenharmony_ci */
1043f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith2_003, TestSize.Level1)
1044f857971dSopenharmony_ci{
1045f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1046f857971dSopenharmony_ci    std::string exampleStr = "abc12345";
1047f857971dSopenharmony_ci    std::string examplePrefix = "";
1048f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1049f857971dSopenharmony_ci    ASSERT_TRUE(ret);
1050f857971dSopenharmony_ci}
1051f857971dSopenharmony_ci
1052f857971dSopenharmony_ci/**
1053f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith2_004
1054f857971dSopenharmony_ci * @tc.desc:
1055f857971dSopenharmony_ci * @tc.type: FUNC
1056f857971dSopenharmony_ci * @tc.require:
1057f857971dSopenharmony_ci */
1058f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith2_004, TestSize.Level1)
1059f857971dSopenharmony_ci{
1060f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1061f857971dSopenharmony_ci    std::string exampleStr = "abc";
1062f857971dSopenharmony_ci    std::string examplePrefix = "abcdefg";
1063f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1064f857971dSopenharmony_ci    ASSERT_FALSE(ret);
1065f857971dSopenharmony_ci}
1066f857971dSopenharmony_ci
1067f857971dSopenharmony_ci/**
1068f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith2_005
1069f857971dSopenharmony_ci * @tc.desc:
1070f857971dSopenharmony_ci * @tc.type: FUNC
1071f857971dSopenharmony_ci * @tc.require:
1072f857971dSopenharmony_ci */
1073f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith2_005, TestSize.Level1)
1074f857971dSopenharmony_ci{
1075f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1076f857971dSopenharmony_ci    std::string exampleStr = "";
1077f857971dSopenharmony_ci    std::string examplePrefix = "abc";
1078f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1079f857971dSopenharmony_ci    ASSERT_FALSE(ret);
1080f857971dSopenharmony_ci}
1081f857971dSopenharmony_ci
1082f857971dSopenharmony_ci/**
1083f857971dSopenharmony_ci * @tc.name: UtityTest_StartWith2_006
1084f857971dSopenharmony_ci * @tc.desc:
1085f857971dSopenharmony_ci * @tc.type: FUNC
1086f857971dSopenharmony_ci * @tc.require:
1087f857971dSopenharmony_ci */
1088f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_StartWith2_006, TestSize.Level1)
1089f857971dSopenharmony_ci{
1090f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1091f857971dSopenharmony_ci    std::string exampleStr = "";
1092f857971dSopenharmony_ci    std::string examplePrefix = "";
1093f857971dSopenharmony_ci    bool ret = Utility::StartWith(exampleStr, examplePrefix);
1094f857971dSopenharmony_ci    ASSERT_TRUE(ret);
1095f857971dSopenharmony_ci}
1096f857971dSopenharmony_ci
1097f857971dSopenharmony_ci/**
1098f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars1_001
1099f857971dSopenharmony_ci * @tc.desc:
1100f857971dSopenharmony_ci * @tc.type: FUNC
1101f857971dSopenharmony_ci * @tc.require:
1102f857971dSopenharmony_ci */
1103f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars1_001, TestSize.Level1)
1104f857971dSopenharmony_ci{
1105f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1106f857971dSopenharmony_ci    char path2[] = "abcd";
1107f857971dSopenharmony_ci    Utility::RemoveTrailingChars('d', path2);
1108f857971dSopenharmony_ci    ASSERT_STREQ(path2, "abc");
1109f857971dSopenharmony_ci}
1110f857971dSopenharmony_ci
1111f857971dSopenharmony_ci/**
1112f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars1_002
1113f857971dSopenharmony_ci * @tc.desc:
1114f857971dSopenharmony_ci * @tc.type: FUNC
1115f857971dSopenharmony_ci * @tc.require:
1116f857971dSopenharmony_ci */
1117f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars1_002, TestSize.Level1)
1118f857971dSopenharmony_ci{
1119f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1120f857971dSopenharmony_ci    char path2[] = "abcd";
1121f857971dSopenharmony_ci    Utility::RemoveTrailingChars('d', path2);
1122f857971dSopenharmony_ci    ASSERT_STREQ(path2, "abc");
1123f857971dSopenharmony_ci}
1124f857971dSopenharmony_ci
1125f857971dSopenharmony_ci/**
1126f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars1_003
1127f857971dSopenharmony_ci * @tc.desc:
1128f857971dSopenharmony_ci * @tc.type: FUNC
1129f857971dSopenharmony_ci * @tc.require:
1130f857971dSopenharmony_ci */
1131f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars1_003, TestSize.Level1)
1132f857971dSopenharmony_ci{
1133f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1134f857971dSopenharmony_ci    char path2[] = "abacda";
1135f857971dSopenharmony_ci    Utility::RemoveTrailingChars('a', path2);
1136f857971dSopenharmony_ci    ASSERT_STREQ(path2, "abacd");
1137f857971dSopenharmony_ci}
1138f857971dSopenharmony_ci
1139f857971dSopenharmony_ci/**
1140f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars1_004
1141f857971dSopenharmony_ci * @tc.desc:
1142f857971dSopenharmony_ci * @tc.type: FUNC
1143f857971dSopenharmony_ci * @tc.require:
1144f857971dSopenharmony_ci */
1145f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars1_004, TestSize.Level1)
1146f857971dSopenharmony_ci{
1147f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1148f857971dSopenharmony_ci    char path2[] = "abacda";
1149f857971dSopenharmony_ci    Utility::RemoveTrailingChars('f', path2);
1150f857971dSopenharmony_ci    ASSERT_STREQ(path2, "abacda");
1151f857971dSopenharmony_ci}
1152f857971dSopenharmony_ci
1153f857971dSopenharmony_ci/**
1154f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars1_005
1155f857971dSopenharmony_ci * @tc.desc:
1156f857971dSopenharmony_ci * @tc.type: FUNC
1157f857971dSopenharmony_ci * @tc.require:
1158f857971dSopenharmony_ci */
1159f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars1_005, TestSize.Level1)
1160f857971dSopenharmony_ci{
1161f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1162f857971dSopenharmony_ci    char path2[] = "";
1163f857971dSopenharmony_ci    Utility::RemoveTrailingChars('f', path2);
1164f857971dSopenharmony_ci    ASSERT_STREQ(path2, "");
1165f857971dSopenharmony_ci}
1166f857971dSopenharmony_ci
1167f857971dSopenharmony_ci/**
1168f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars2_001
1169f857971dSopenharmony_ci * @tc.desc:
1170f857971dSopenharmony_ci * @tc.type: FUNC
1171f857971dSopenharmony_ci * @tc.require:
1172f857971dSopenharmony_ci */
1173f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars2_001, TestSize.Level1)
1174f857971dSopenharmony_ci{
1175f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1176f857971dSopenharmony_ci    const std::string path1 = "cd";
1177f857971dSopenharmony_ci    std::string path2 = "abcd";
1178f857971dSopenharmony_ci    Utility::RemoveTrailingChars(path1, path2);
1179f857971dSopenharmony_ci    ASSERT_STREQ(path2.c_str(), "ab");
1180f857971dSopenharmony_ci}
1181f857971dSopenharmony_ci
1182f857971dSopenharmony_ci/**
1183f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars2_002
1184f857971dSopenharmony_ci * @tc.desc:
1185f857971dSopenharmony_ci * @tc.type: FUNC
1186f857971dSopenharmony_ci * @tc.require:
1187f857971dSopenharmony_ci */
1188f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars2_002, TestSize.Level1)
1189f857971dSopenharmony_ci{
1190f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1191f857971dSopenharmony_ci    const std::string path1 = "c";
1192f857971dSopenharmony_ci    std::string path2 = "abdc";
1193f857971dSopenharmony_ci    Utility::RemoveTrailingChars(path1, path2);
1194f857971dSopenharmony_ci    ASSERT_STREQ(path2.c_str(), "abd");
1195f857971dSopenharmony_ci}
1196f857971dSopenharmony_ci
1197f857971dSopenharmony_ci
1198f857971dSopenharmony_ci/**
1199f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars2_003
1200f857971dSopenharmony_ci * @tc.desc:
1201f857971dSopenharmony_ci * @tc.type: FUNC
1202f857971dSopenharmony_ci * @tc.require:
1203f857971dSopenharmony_ci */
1204f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars2_003, TestSize.Level1)
1205f857971dSopenharmony_ci{
1206f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1207f857971dSopenharmony_ci    const std::string path1 = "a";
1208f857971dSopenharmony_ci    std::string path2 = "abacda";
1209f857971dSopenharmony_ci    Utility::RemoveTrailingChars(path1, path2);
1210f857971dSopenharmony_ci    ASSERT_STREQ(path2.c_str(), "abacd");
1211f857971dSopenharmony_ci}
1212f857971dSopenharmony_ci
1213f857971dSopenharmony_ci/**
1214f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars2_004
1215f857971dSopenharmony_ci * @tc.desc:
1216f857971dSopenharmony_ci * @tc.type: FUNC
1217f857971dSopenharmony_ci * @tc.require:
1218f857971dSopenharmony_ci */
1219f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars2_004, TestSize.Level1)
1220f857971dSopenharmony_ci{
1221f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1222f857971dSopenharmony_ci    const std::string path1 = "e";
1223f857971dSopenharmony_ci    std::string path2 = "abc";
1224f857971dSopenharmony_ci    Utility::RemoveTrailingChars(path1, path2);
1225f857971dSopenharmony_ci    ASSERT_STREQ(path2.c_str(), "abc");
1226f857971dSopenharmony_ci}
1227f857971dSopenharmony_ci
1228f857971dSopenharmony_ci/**
1229f857971dSopenharmony_ci * @tc.name: UtityTest_RemoveTrailingChars2_005
1230f857971dSopenharmony_ci * @tc.desc:
1231f857971dSopenharmony_ci * @tc.type: FUNC
1232f857971dSopenharmony_ci * @tc.require:
1233f857971dSopenharmony_ci */
1234f857971dSopenharmony_ciHWTEST_F(UtilityTest, UtityTest_RemoveTrailingChars2_005, TestSize.Level1)
1235f857971dSopenharmony_ci{
1236f857971dSopenharmony_ci    CALL_TEST_DEBUG;
1237f857971dSopenharmony_ci    const std::string path1 = "";
1238f857971dSopenharmony_ci    std::string path2 = "abc";
1239f857971dSopenharmony_ci    Utility::RemoveTrailingChars(path1, path2);
1240f857971dSopenharmony_ci    ASSERT_STREQ(path2.c_str(), "abc");
1241f857971dSopenharmony_ci}
1242f857971dSopenharmony_ci} // namespace DeviceStatus
1243f857971dSopenharmony_ci} // namespace Msdp
1244f857971dSopenharmony_ci} // namespace OHOS
1245