1 /*
2 * Copyright (C) 2024 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 #define MLOG_TAG "FileExtUnitTest"
16
17 #include "ringtone_scanner_utils_test.h"
18
19 #include "ringtone_db_const.h"
20 #include "ringtone_errno.h"
21 #include "ringtone_log.h"
22 #include "ringtone_mimetype_utils.h"
23 #include "ringtone_scanner_utils.h"
24 #include "ringtone_unittest_utils.h"
25 #include "ringtone_type.h"
26
27 using namespace std;
28 using namespace OHOS;
29 using namespace testing::ext;
30
31 namespace OHOS {
32 namespace Media {
SetUpTestCase()33 void RingtoneScannerUtilsTest::SetUpTestCase() {}
34
TearDownTestCase()35 void RingtoneScannerUtilsTest::TearDownTestCase() {}
36
37 // SetUp:Execute before each test case
SetUp()38 void RingtoneScannerUtilsTest::SetUp()
39 {
40 RingtoneUnitTestUtils::CleanTestFiles();
41 RingtoneUnitTestUtils::InitRootDirs();
42 }
43
TearDown(void)44 void RingtoneScannerUtilsTest::TearDown(void)
45 {
46 RingtoneUnitTestUtils::CleanTestFiles();
47 }
48
49
50 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_IsExists_test_001, TestSize.Level0)
51 {
52 bool ret = RingtoneScannerUtils::IsExists(RINGTONE_DEFAULT_STR);
53 EXPECT_EQ(ret, false);
54 const string path = "ringtonelib_IsExists_test_001";
55 ret = RingtoneScannerUtils::IsExists(path);
56 EXPECT_EQ(ret, false);
57 const string pathSecond = "/data/local/tmp/";
58 ret = RingtoneScannerUtils::IsExists(pathSecond);
59 EXPECT_EQ(ret, true);
60 }
61
62
63 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_GetFileNameFromUri_test_001, TestSize.Level0)
64 {
65 string ret = RingtoneScannerUtils::GetFileNameFromUri(RINGTONE_DEFAULT_STR);
66 EXPECT_EQ(ret, "");
67 string path = "ringtonelib_GetFileNameFromUri_test_001/test";
68 ret = RingtoneScannerUtils::GetFileNameFromUri(path);
69 EXPECT_EQ(ret, "test");
70 path = "ringtonelib_GetFileNameFromUri_test_001";
71 ret = RingtoneScannerUtils::GetFileNameFromUri(path);
72 EXPECT_EQ(ret, "");
73 }
74
75 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_GetFileExtension_test_001, TestSize.Level0)
76 {
77 string ret = RingtoneScannerUtils::GetFileExtension(RINGTONE_DEFAULT_STR);
78 EXPECT_EQ(ret, "");
79 string path = "ringtonelib_GetFileExtension_test_001.test";
80 ret = RingtoneScannerUtils::GetFileExtension(path);
81 EXPECT_EQ(ret, "test");
82 path = "ringtonelib_GetFileExtension_test_001";
83 ret = RingtoneScannerUtils::GetFileExtension(path);
84 EXPECT_EQ(ret, "");
85 }
86
87 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_IsFileHidden_test_001, TestSize.Level0)
88 {
89 bool ret = RingtoneScannerUtils::IsFileHidden(RINGTONE_DEFAULT_STR);
90 EXPECT_EQ(ret, false);
91 const string path = "ringtonelib_IsFileHidden_test_001/.test";
92 ret = RingtoneScannerUtils::IsFileHidden(path);
93 EXPECT_EQ(ret, true);
94 }
95
96 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_GetParentPath_test_001, TestSize.Level0)
97 {
98 string ret = RingtoneScannerUtils::GetParentPath(RINGTONE_DEFAULT_STR);
99 EXPECT_EQ(ret, "");
100 const string path = "ringtonelib_GetParentPath_test_001/test";
101 ret = RingtoneScannerUtils::GetParentPath(path);
102 EXPECT_EQ(ret, "ringtonelib_GetParentPath_test_001");
103 }
104
105 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_GetFileTitle_test_001, TestSize.Level0)
106 {
107 const string path = "ringtonelib_GetFileTitle_test_001";
108 string ret = RingtoneScannerUtils::GetFileTitle(path);
109 EXPECT_EQ(ret, path);
110 }
111
112 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_IsDirHidden_test_001, TestSize.Level0)
113 {
114 const string path = "ringtonelib_IsDirHidden_test_001/.test";
115 bool ret = RingtoneScannerUtils::IsDirHidden(path);
116 EXPECT_EQ(ret, true);
117 ret = RingtoneScannerUtils::IsDirHidden(RINGTONE_DEFAULT_STR);
118 EXPECT_EQ(ret, false);
119 }
120
121 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_IsDirHiddenRecursive_test_001, TestSize.Level0)
122 {
123 const string path = "ringtonelib_IsDirHiddenRecursive_test_001/.test";
124 bool ret = RingtoneScannerUtils::IsDirHiddenRecursive(path);
125 EXPECT_EQ(ret, true);
126 ret = RingtoneScannerUtils::IsDirHiddenRecursive(RINGTONE_DEFAULT_STR);
127 EXPECT_EQ(ret, false);
128 }
129
130 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_IsDirectory_test_001, TestSize.Level0)
131 {
132 bool ret = RingtoneScannerUtils::IsDirectory(RINGTONE_DEFAULT_STR);
133 EXPECT_EQ(ret, false);
134 const string path = "ringtonelib_IsDirectory_test_001";
135 ret = RingtoneScannerUtils::IsDirectory(path);
136 EXPECT_EQ(ret, false);
137 const string pathSecond = "/storage/media";
138 ret = RingtoneScannerUtils::IsDirectory(pathSecond);
139 EXPECT_EQ(ret, true);
140 }
141
142 HWTEST_F(RingtoneScannerUtilsTest, ringtonelib_IsRegularFile_test_001, TestSize.Level0)
143 {
144 bool ret = RingtoneScannerUtils::IsRegularFile(RINGTONE_DEFAULT_STR);
145 EXPECT_EQ(ret, false);
146 string path = "ringtonelib_IsRegularFile_test_001";
147 ret = RingtoneScannerUtils::IsRegularFile(path);
148 EXPECT_EQ(ret, false);
149 const string pathSecond = "/storage/cloud/files/Ringtone/Scanner_ringtone.ogg";
150 EXPECT_EQ(RingtoneUnitTestUtils::CreateFileFS(pathSecond), true);
151 ret = RingtoneScannerUtils::IsRegularFile(pathSecond);
152 EXPECT_EQ(ret, true);
153 }
154 } // namespace Media
155 } // namespace OHOS
156