1 /*
2 * Copyright (C) 2025 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 "open_core.h"
17
18 #include <gtest/gtest.h>
19
20 namespace OHOS::FileManagement::ModuleFileIO::Test {
21 using namespace testing;
22 using namespace testing::ext;
23 using namespace std;
24
25 class OpenCoreTest : public testing::Test {
26 public:
27 static void SetUpTestCase(void);
28 static void TearDownTestCase(void);
29 void SetUp();
30 void TearDown();
31 };
32
SetUpTestCase(void)33 void OpenCoreTest::SetUpTestCase(void)
34 {
35 GTEST_LOG_(INFO) << "SetUpTestCase";
36 }
37
TearDownTestCase(void)38 void OpenCoreTest::TearDownTestCase(void)
39 {
40 GTEST_LOG_(INFO) << "TearDownTestCase";
41 }
42
SetUp(void)43 void OpenCoreTest::SetUp(void)
44 {
45 GTEST_LOG_(INFO) << "SetUp";
46 }
47
TearDown(void)48 void OpenCoreTest::TearDown(void)
49 {
50 GTEST_LOG_(INFO) << "TearDown";
51 }
52
53 /**
54 * @tc.name: OpenCoreTest_DoOpen_001
55 * @tc.desc: Test function of OpenCore::DoOpen interface for ERROR.
56 * @tc.size: MEDIUM
57 * @tc.type: FUNC
58 * @tc.level Level 1
59 */
60 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_001, testing::ext::TestSize.Level1)
61 {
62 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_001";
63
64 string path = "/test/open_test.txt";
65 int32_t mode = -1;
66
67 auto res = OpenCore::DoOpen(path, mode);
68 EXPECT_EQ(res.IsSuccess(), false);
69
70 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_001";
71 }
72
73 /**
74 * @tc.name: OpenCoreTest_DoOpen_002
75 * @tc.desc: Test function of OpenCore::DoOpen interface for ERROR.
76 * @tc.size: MEDIUM
77 * @tc.type: FUNC
78 * @tc.level Level 1
79 */
80 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_002, testing::ext::TestSize.Level1)
81 {
82 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_002";
83
84 string path = "/test/open_test.txt";
85 int32_t mode = 3;
86
87 auto res = OpenCore::DoOpen(path, mode);
88 EXPECT_EQ(res.IsSuccess(), false);
89
90 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_002";
91 }
92
93 /**
94 * @tc.name: OpenCoreTest_DoOpen_003
95 * @tc.desc: Test function of OpenCore::DoOpen interface for FALSE.
96 * @tc.size: MEDIUM
97 * @tc.type: FUNC
98 * @tc.level Level 1
99 */
100 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_003, testing::ext::TestSize.Level1)
101 {
102 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_003";
103
104 string path = "file://media/open_test.jpg";
105 int32_t mode = 0;
106
107 auto res = OpenCore::DoOpen(path, mode);
108 EXPECT_EQ(res.IsSuccess(), false);
109
110 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_003";
111 }
112
113 /**
114 * @tc.name: OpenCoreTest_DoOpen_004
115 * @tc.desc: Test function of OpenCore::DoOpen interface for FALSE.
116 * @tc.size: MEDIUM
117 * @tc.type: FUNC
118 * @tc.level Level 1
119 */
120 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_004, testing::ext::TestSize.Level1)
121 {
122 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_004";
123
124 string path = "file://docs/open_test.pdf";
125 int32_t mode = 0;
126
127 auto res = OpenCore::DoOpen(path, mode);
128 EXPECT_EQ(res.IsSuccess(), false);
129
130 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_004";
131 }
132
133 /**
134 * @tc.name: OpenCoreTest_DoOpen_005
135 * @tc.desc: Test function of OpenCore::DoOpen interface for FALSE.
136 * @tc.size: MEDIUM
137 * @tc.type: FUNC
138 * @tc.level Level 1
139 */
140 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_005, testing::ext::TestSize.Level1)
141 {
142 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_005";
143
144 string path = "content://com.example.provider/open_test.txt";
145 int32_t mode = 0;
146
147 auto res = OpenCore::DoOpen(path, mode);
148 EXPECT_EQ(res.IsSuccess(), false);
149
150 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_005";
151 }
152
153 /**
154 * @tc.name: OpenCoreTest_DoOpen_006
155 * @tc.desc: Test function of OpenCore::DoOpen interface for FALSE.
156 * @tc.size: MEDIUM
157 * @tc.type: FUNC
158 * @tc.level Level 1
159 */
160 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_006, testing::ext::TestSize.Level1)
161 {
162 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_006";
163
164 string path = "datashare://media/open_test.jpg";
165 int32_t mode = 0;
166
167 auto res = OpenCore::DoOpen(path, mode);
168 EXPECT_EQ(res.IsSuccess(), false);
169
170 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_006";
171 }
172
173 /**
174 * @tc.name: OpenCoreTest_DoOpen_007
175 * @tc.desc: Test function of OpenCore::DoOpen interface for FALSE.
176 * @tc.size: MEDIUM
177 * @tc.type: FUNC
178 * @tc.level Level 1
179 */
180 HWTEST_F(OpenCoreTest, OpenCoreTest_DoOpen_007, testing::ext::TestSize.Level1)
181 {
182 GTEST_LOG_(INFO) << "OpenCoreTest-begin OpenCoreTest_DoOpen_007";
183
184 string path = "invalid://path/dir_test";
185 int32_t mode = 0;
186
187 auto res = OpenCore::DoOpen(path, mode);
188 EXPECT_EQ(res.IsSuccess(), false);
189
190 GTEST_LOG_(INFO) << "OpenCoreTest-end OpenCoreTest_DoOpen_007";
191 }
192
193 } // namespace OHOS::FileManagement::ModuleFileIO::Test