• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023 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 <cassert>
17 #include <fcntl.h>
18 #include <gtest/gtest.h>
19 
20 #include <singleton.h>
21 #include <string>
22 #include <sys/mount.h>
23 #include <sys/stat.h>
24 #include <sys/types.h>
25 
26 #include "access_token_error.h"
27 #include "accesstoken_kit.h"
28 #include "file_share.cpp"
29 #include "file_share.h"
30 #include "ipc_skeleton.h"
31 #include "log.h"
32 #include "sandbox_helper.h"
33 #include "uri.h"
34 
35 namespace {
36 using namespace std;
37 using namespace OHOS::AppFileService;
38 using namespace OHOS::Security::AccessToken;
39 
40 const int E_OK = 0;
41 const string BUNDLE_A = "com.example.filesharea";
42 
43 class FileShareTest : public testing::Test {
44 public:
SetUpTestCase(void)45     static void SetUpTestCase(void) {};
TearDownTestCase()46     static void TearDownTestCase() {};
SetUp()47     void SetUp() {};
TearDown()48     void TearDown() {};
49 };
50 
51 /**
52  * @tc.name: file_share_test_0000
53  * @tc.desc: Test function of CreateShareFile() interface for SUCCESS.
54  * @tc.size: MEDIUM
55  * @tc.type: FUNC
56  * @tc.level Level 1
57  * @tc.require: SR000H63TL
58  */
59 HWTEST_F(FileShareTest, File_share_CreateShareFile_0000, testing::ext::TestSize.Level1)
60 {
61     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_CreateShareFile_0000";
62 
63     int32_t uid = 100;
64 
65     string bundleNameA = "com.example.filesharea";
66     string fileStr = "/data/app/el2/" + to_string(uid) + "/base/" + bundleNameA + "/files/test.txt";
67     int32_t fd = open(fileStr.c_str(), O_RDWR | O_CREAT);
68     ASSERT_TRUE(fd != -1) << "FileShareTest Create File Failed!";
69     close(fd);
70     string uri = "file://" + bundleNameA + "/data/storage/el2/base/files/test.txt";
71 
72     string bundleNameB = "com.example.fileshareb";
73     uint32_t tokenId = AccessTokenKit::GetHapTokenID(uid, bundleNameB, 0);
74 
75     int32_t flag = 3;
76     vector<string> uriList(1, uri);
77     vector<int32_t> retList;
78     int32_t ret = FileShare::CreateShareFile(uriList, tokenId, flag, retList);
79     EXPECT_EQ(ret, E_OK);
80 
81     uriList.clear();
82     retList.clear();
83     uri.clear();
84     uri = "file://" + bundleNameA + "/data/storage/el2/base/files/../files/test.txt";
85     uriList.push_back(uri);
86     ret = FileShare::CreateShareFile(uriList, tokenId, flag, retList);
87     EXPECT_EQ(ret, -EINVAL);
88     GTEST_LOG_(INFO) << "FileShareTest-end File_share_CreateShareFile_0000";
89 }
90 
91 /**
92  * @tc.name: file_share_test_0001
93  * @tc.desc: Test function of CreateShareFile() interface for SUCCESS.
94  * @tc.size: MEDIUM
95  * @tc.type: FUNC
96  * @tc.level Level 1
97  * @tc.require: SR000H63TL
98  */
99 HWTEST_F(FileShareTest, File_share_CreateShareFile_0001, testing::ext::TestSize.Level1)
100 {
101     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_CreateShareFile_0001";
102 
103     int32_t uid = 100;
104 
105     string bundleNameA = "com.example.filesharea";
106     string fileStr = "/data/app/el2/" + to_string(uid) + "/base/" + bundleNameA + "/files/test.txt";
107     int32_t fd = open(fileStr.c_str(), O_RDWR | O_CREAT);
108     ASSERT_TRUE(fd != -1) << "FileShareTest Create File Failed!";
109     close(fd);
110     string uri = "file://" + bundleNameA + "/data/test/el2/base/files/test.txt";
111 
112     string bundleNameB = "com.example.fileshareb";
113     uint32_t tokenId = AccessTokenKit::GetHapTokenID(uid, bundleNameB, 0);
114 
115     int32_t flag = 3;
116     vector<string> uriList(1, uri);
117     vector<int32_t> retList;
118     int32_t ret = FileShare::CreateShareFile(uriList, tokenId, flag, retList);
119     EXPECT_EQ(ret, -EINVAL);
120     GTEST_LOG_(INFO) << "FileShareTest-end File_share_CreateShareFile_0001";
121 }
122 
123 /**
124  * @tc.name: file_share_test_0002
125  * @tc.desc: Test function of CreateShareFile() interface for SUCCESS.
126  * @tc.size: MEDIUM
127  * @tc.type: FUNC
128  * @tc.level Level 1
129  * @tc.require: SR000H63TL
130  */
131 HWTEST_F(FileShareTest, File_share_CreateShareFile_0002, testing::ext::TestSize.Level1)
132 {
133     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_CreateShareFile_0002";
134     int32_t uid = 100;
135 
136     string bundleNameA = "com.example.filesharea";
137     string fileStr = "/data/app/el2/" + to_string(uid) + "/base/" + bundleNameA + "/files/test.txt";
138     int32_t fd = open(fileStr.c_str(), O_RDWR | O_CREAT);
139     ASSERT_TRUE(fd != -1) << "FileShareTest Create File Failed!";
140     close(fd);
141     string uri = "file://" + bundleNameA + "/data/storage/el2/base/files/test.txt";
142     uint32_t tokenId = 100;
143 
144     int32_t flag = 3;
145     vector<string> uriList(1, uri);
146     vector<int32_t> retList;
147     int32_t ret = FileShare::CreateShareFile(uriList, tokenId, flag, retList);
148     EXPECT_EQ(ret, static_cast<int32_t>(AccessTokenError::ERR_TOKENID_NOT_EXIST));
149     GTEST_LOG_(INFO) << "FileShareTest-end File_share_CreateShareFile_0002";
150 }
151 
152 /**
153  * @tc.name: file_share_test_0003
154  * @tc.desc: Test function of CreateShareFile() interface for SUCCESS.
155  * @tc.size: MEDIUM
156  * @tc.type: FUNC
157  * @tc.level Level 1
158  * @tc.require: SR000H63TL
159  */
160 HWTEST_F(FileShareTest, File_share_CreateShareFile_0003, testing::ext::TestSize.Level1)
161 {
162     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_CreateShareFile_0003";
163     int32_t uid = 100;
164 
165     string bundleNameA = "com.example.filesharea";
166     string fileStr = "/data/app/el2/" + to_string(uid) + "/base/" + bundleNameA + "/files/test.txt";
167     int32_t fd = open(fileStr.c_str(), O_RDWR | O_CREAT);
168     ASSERT_TRUE(fd != -1) << "FileShareTest Create File Failed!";
169     close(fd);
170     string uri = "";
171 
172     string bundleNameB = "com.example.fileshareb";
173     uint32_t tokenId = AccessTokenKit::GetHapTokenID(uid, bundleNameB, 0);
174 
175     int32_t flag = 3;
176     vector<string> uriList(1, uri);
177     vector<int32_t> retList;
178     int32_t ret = FileShare::CreateShareFile(uriList, tokenId, flag, retList);
179     EXPECT_EQ(ret, -EINVAL);
180     GTEST_LOG_(INFO) << "FileShareTest-end File_share_CreateShareFile_0003";
181 }
182 
183 /**
184  * @tc.name: file_share_test_0004
185  * @tc.desc: Test function of CreateShareFile() interface for SUCCESS.
186  * @tc.size: MEDIUM
187  * @tc.type: FUNC
188  * @tc.level Level 1
189  * @tc.require: SR000H63TL
190  */
191 HWTEST_F(FileShareTest, File_share_CreateShareFile_0004, testing::ext::TestSize.Level1)
192 {
193     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_CreateShareFile_0004";
194     int32_t uid = 100;
195 
196     string bundleNameA = "com.example.filesharea";
197     string fileStr = "/data/app/el2/" + to_string(uid) + "/base/" + bundleNameA + "/files/test.txt";
198     int32_t fd = open(fileStr.c_str(), O_RDWR | O_CREAT);
199     ASSERT_TRUE(fd != -1) << "FileShareTest Create File Failed!";
200     close(fd);
201     string uri = "";
202 
203     string bundleNameB = "com.example.fileshareb";
204     uint32_t tokenId = AccessTokenKit::GetHapTokenID(uid, bundleNameB, 0);
205 
206     int32_t flag = 4;
207     vector<string> uriList(1, uri);
208     vector<int32_t> retList;
209     int32_t ret = FileShare::CreateShareFile(uriList, tokenId, flag, retList);
210     EXPECT_EQ(ret, -EINVAL);
211     GTEST_LOG_(INFO) << "FileShareTest-end File_share_CreateShareFile_0004";
212 }
213 
214 /**
215  * @tc.name: file_share_test_0005
216  * @tc.desc: Test function of DeleteShareFile() interface for SUCCESS.
217  * @tc.size: MEDIUM
218  * @tc.type: FUNC
219  * @tc.level Level 1
220  * @tc.require: SR000H63TL
221  */
222 HWTEST_F(FileShareTest, File_share_DeleteShareFile_0005, testing::ext::TestSize.Level1)
223 {
224     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_DeleteShareFile_0005";
225     int32_t uid = 100;
226 
227     string bundleNameB = "com.example.fileshareb";
228     uint32_t tokenId = AccessTokenKit::GetHapTokenID(uid, bundleNameB, 0);
229     vector<string> sharePathList;
230     string bundleNameA = "com.example.filesharea";
231     string uri = "file://" + bundleNameA + "/data/storage/el2/base/files/test.txt";
232     sharePathList.push_back(uri);
233     int32_t ret = FileShare::DeleteShareFile(tokenId, sharePathList);
234     EXPECT_EQ(ret, E_OK);
235     GTEST_LOG_(INFO) << "FileShareTest-end File_share_DeleteShareFile_0005";
236 }
237 
238 /**
239  * @tc.name: file_share_test_0006
240  * @tc.desc: Test function of DeleteShareFile() interface for SUCCESS.
241  * @tc.size: MEDIUM
242  * @tc.type: FUNC
243  * @tc.level Level 1
244  * @tc.require: SR000H63TL
245  */
246 HWTEST_F(FileShareTest, File_share_DeleteShareFile_0006, testing::ext::TestSize.Level1)
247 {
248     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_DeleteShareFile_0006";
249     uint32_t tokenId = 104;
250     vector<string> sharePathList;
251     string bundleNameA = "com.example.filesharea";
252     string uri = "file://" + bundleNameA + "/data/storage/el2/base/files/test.txt";
253     sharePathList.push_back(uri);
254     int32_t ret = FileShare::DeleteShareFile(tokenId, sharePathList);
255     EXPECT_EQ(ret, -EINVAL);
256     GTEST_LOG_(INFO) << "FileShareTest-end File_share_DeleteShareFile_0006";
257 }
258 
259 /**
260  * @tc.name: File_share_DeleteShareFile_0007
261  * @tc.desc: Test function of DeleteShareFile() interface for SUCCESS.
262  * @tc.size: MEDIUM
263  * @tc.type: FUNC
264  * @tc.level Level 1
265  * @tc.require: SR000H63TL
266  */
267 HWTEST_F(FileShareTest, File_share_DeleteShareFile_0007, testing::ext::TestSize.Level1)
268 {
269     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_DeleteShareFile_0007";
270     int32_t uid = 100;
271 
272     string bundleNameA = "com.example.filesharea";
273     string file = "/data/app/el2/" + to_string(uid) + "/base/" + bundleNameA + "/files/test.txt";
274     int32_t fd = open(file.c_str(), O_RDWR | O_CREAT);
275     ASSERT_TRUE(fd != -1) << "FileShareTest Create File Failed!";
276     close(fd);
277     string uri = "file://" + bundleNameA + "/data/storage/el2/base/files/test.txt";
278 
279     string bundleNameB = "com.example.fileshareb";
280     uint32_t tokenId = AccessTokenKit::GetHapTokenID(uid, bundleNameB, 0);
281 
282     int32_t flag = 3;
283     vector<string> uriList(1, uri);
284     vector<int32_t> retLists;
285     int32_t ret = FileShare::CreateShareFile(uriList, tokenId, flag, retLists);
286     EXPECT_EQ(ret, E_OK);
287 
288     vector<string> sharePathLists;
289     string uriErr = "file://" + bundleNameA + "/data/storage/el2/base/files/abc/../test.txt";
290     sharePathLists.push_back(uriErr);
291     ret = FileShare::DeleteShareFile(tokenId, sharePathLists);
292     EXPECT_EQ(ret, E_OK);
293 
294     string sharePath = "/data/service/el2/" + to_string(uid) + "/share/" + bundleNameB + "/rw/" + bundleNameA +
295                        "/data/storage/el2/base/files/test.txt";
296     ret = access(sharePath.c_str(), F_OK);
297     EXPECT_EQ(ret, E_OK);
298 
299     sharePathLists.push_back(uri);
300     ret = FileShare::DeleteShareFile(tokenId, sharePathLists);
301     EXPECT_EQ(ret, E_OK);
302 
303     ret = access(sharePath.c_str(), F_OK);
304     EXPECT_EQ(ret, -1);
305     GTEST_LOG_(INFO) << "FileShareTest-end File_share_DeleteShareFile_0007";
306 }
307 
308 /**
309  * @tc.name: File_share_GetPhysicalPath_0001
310  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
311  * @tc.size: MEDIUM
312  * @tc.type: FUNC
313  * @tc.level Level 1
314  * @tc.require: I7PDZL
315  */
316 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0001, testing::ext::TestSize.Level1)
317 {
318     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0001";
319     std::string fileUri = "file://media/Photo/12/IMG_12345_0011/test.jpg";
320     std::string physicalPath;
321     int32_t ret = SandboxHelper::GetPhysicalPath(fileUri, "100", physicalPath);
322     EXPECT_EQ(ret, E_OK);
323     EXPECT_EQ(physicalPath, "/mnt/hmdfs/100/account/cloud_merge_view/files/Photo/11/IMG_12345_0011.jpg");
324     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0001";
325 }
326 
327 /**
328  * @tc.name: File_share_GetPhysicalPath_0002
329  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
330  * @tc.size: MEDIUM
331  * @tc.type: FUNC
332  * @tc.level Level 1
333  * @tc.require: I7PDZL
334  */
335 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0002, testing::ext::TestSize.Level1)
336 {
337     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0002";
338     std::string fileUri = "file://media/Photo/12/IMG_12345_/test.jpg";
339     std::string physicalPath;
340     int32_t ret = SandboxHelper::GetPhysicalPath(fileUri, "100", physicalPath);
341     EXPECT_EQ(ret, -EINVAL);
342     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0002";
343 }
344 
345 /**
346  * @tc.name: File_share_GetPhysicalPath_0003
347  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
348  * @tc.size: MEDIUM
349  * @tc.type: FUNC
350  * @tc.level Level 1
351  * @tc.require: I7PDZL
352  */
353 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0003, testing::ext::TestSize.Level1)
354 {
355     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0003";
356     std::string fileUri = "file://media/Photo/12/IMG_12345_a0011/test.jpg";
357     std::string physicalPath;
358     int32_t ret = SandboxHelper::GetPhysicalPath(fileUri, "100", physicalPath);
359     EXPECT_EQ(ret, -EINVAL);
360     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0003";
361 }
362 
363 /**
364  * @tc.name: File_share_GetPhysicalPath_0004
365  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
366  * @tc.size: MEDIUM
367  * @tc.type: FUNC
368  * @tc.level Level 1
369  * @tc.require: I7PDZL
370  */
371 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0004, testing::ext::TestSize.Level1)
372 {
373     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0004";
374     std::string fileUri = "file://media/Photo/IMG_12345_999999/test.jpg";
375     std::string physicalPath;
376     int32_t ret = SandboxHelper::GetPhysicalPath(fileUri, "100", physicalPath);
377     EXPECT_EQ(ret, -EINVAL);
378     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0004";
379 }
380 
381 /**
382  * @tc.name: File_share_GetPhysicalPath_0005
383  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
384  * @tc.size: MEDIUM
385  * @tc.type: FUNC
386  * @tc.level Level 1
387  * @tc.require: I7PDZL
388  */
389 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0005, testing::ext::TestSize.Level1)
390 {
391     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0005";
392     std::string strPrefix = "file://media/";
393     std::string fileUri = "Photo/12/IMG_12345_999999/test.jpg";
394     std::string physicalPath;
395     int32_t ret = SandboxHelper::GetPhysicalPath(strPrefix + SandboxHelper::Encode(fileUri), "100", physicalPath);
396     EXPECT_EQ(ret, E_OK);
397     EXPECT_EQ(physicalPath, "/mnt/hmdfs/100/account/cloud_merge_view/files/Photo/575/IMG_12345_999999.jpg");
398 
399     std::string fileUri2 = "Photo/12/IMG_12345_999999/test .jpg";
400     std::string physicalPath2;
401     ret = SandboxHelper::GetPhysicalPath(strPrefix + SandboxHelper::Encode(fileUri2), "100", physicalPath2);
402     EXPECT_EQ(ret, E_OK);
403     EXPECT_EQ(physicalPath2, "/mnt/hmdfs/100/account/cloud_merge_view/files/Photo/575/IMG_12345_999999.jpg");
404     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0005";
405 }
406 
407 /**
408  * @tc.name: File_share_GetPhysicalPath_0006
409  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
410  * @tc.size: MEDIUM
411  * @tc.type: FUNC
412  * @tc.level Level 1
413  * @tc.require: I7PDZL
414  */
415 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0006, testing::ext::TestSize.Level1)
416 {
417     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0006";
418     std::string fileUri = "file://media/Photo/12/IMG_12345_999999/test.jpg/other";
419     std::string physicalPath;
420     int32_t ret = SandboxHelper::GetPhysicalPath(fileUri, "100", physicalPath);
421     EXPECT_EQ(ret, -EINVAL);
422     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0006";
423 }
424 
425 /**
426  * @tc.name: File_share_GetPhysicalPath_0007
427  * @tc.desc: Test function of GetPhysicalPath() interface for SUCCESS.
428  * @tc.size: MEDIUM
429  * @tc.type: FUNC
430  * @tc.level Level 1
431  * @tc.require: I7PDZL
432  */
433 HWTEST_F(FileShareTest, File_share_GetPhysicalPath_0007, testing::ext::TestSize.Level1)
434 {
435     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0007";
436     std::string fileUri0 = "file://docs/storage/Users/currentUser/../test../test1";
437     std::string fileUri1 = "file://docs/storage/Users/currentUser/test../../test";
438     std::string fileUri2 = "file://docs/storage/Users/currentUser/test../../";
439     std::string fileUri3 = "file://docs/storage/Users/currentUser/test../test../..";
440     std::string fileUri4 = "file://docs/storage/Users/currentUser/test/..test/..";
441     std::string fileUri5 = "file://docs/storage/Users/currentUser/test/test../test";
442     std::string fileUri6 = "file://docs/storage/Users/currentUser/test../test../test";
443     std::string fileUri7 = "file://docs/storage/Users/currentUser/test../test../test../..test";
444     std::string physicalPath;
445     int32_t ret = SandboxHelper::GetPhysicalPath(fileUri0, "100", physicalPath);
446     EXPECT_EQ(ret, -EINVAL);
447     ret = SandboxHelper::GetPhysicalPath(fileUri1, "100", physicalPath);
448     EXPECT_EQ(ret, -EINVAL);
449     ret = SandboxHelper::GetPhysicalPath(fileUri2, "100", physicalPath);
450     EXPECT_EQ(ret, -EINVAL);
451     ret = SandboxHelper::GetPhysicalPath(fileUri3, "100", physicalPath);
452     EXPECT_EQ(ret, -EINVAL);
453     ret = SandboxHelper::GetPhysicalPath(fileUri4, "100", physicalPath);
454     EXPECT_EQ(ret, -EINVAL);
455     ret = SandboxHelper::GetPhysicalPath(fileUri5, "100", physicalPath);
456     EXPECT_EQ(ret, E_OK);
457     ret = SandboxHelper::GetPhysicalPath(fileUri6, "100", physicalPath);
458     EXPECT_EQ(ret, E_OK);
459     ret = SandboxHelper::GetPhysicalPath(fileUri7, "100", physicalPath);
460     EXPECT_EQ(ret, E_OK);
461     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalPath_0007";
462 }
463 
464 /**
465  * @tc.name: File_share_GetMediaSharePath_0001
466  * @tc.desc: Test function of GetMediaSharePath() interface for SUCCESS.
467  * @tc.size: MEDIUM
468  * @tc.type: FUNC
469  * @tc.level Level 1
470  * @tc.require: I7PDZL
471  */
472 HWTEST_F(FileShareTest, File_share_GetMediaSharePath_0001, testing::ext::TestSize.Level1)
473 {
474     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetMediaSharePath_0001";
475     std::string fileUri = "file://media/Photo/test/IMG_12345_999999/test.jpg";
476     vector<string> uriList;
477     vector<string> physicalPathList;
478     uriList.push_back(fileUri);
479     int32_t ret = SandboxHelper::GetMediaSharePath(uriList, physicalPathList);
480     EXPECT_EQ(ret, -EINVAL);
481     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetMediaSharePath_0001";
482 }
483 
484 /**
485  * @tc.name: File_share_GetMediaSharePath_0002
486  * @tc.desc: Test function of GetMediaSharePath() interface for SUCCESS.
487  * @tc.size: MEDIUM
488  * @tc.type: FUNC
489  * @tc.level Level 1
490  * @tc.require: I7PDZL
491  */
492 HWTEST_F(FileShareTest, File_share_GetMediaSharePath_0002, testing::ext::TestSize.Level1)
493 {
494     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetMediaSharePath_0002";
495     std::string fileUri = "file://media/Photo";
496     vector<string> uriList;
497     vector<string> physicalPathList;
498     uriList.push_back(fileUri);
499     int32_t ret = SandboxHelper::GetMediaSharePath(uriList, physicalPathList);
500     EXPECT_EQ(ret, -EINVAL);
501     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetMediaSharePath_0002";
502 }
503 
504 /**
505  * @tc.name: File_share_GetMediaSharePath_0003
506  * @tc.desc: Test function of GetMediaSharePath() interface for SUCCESS.
507  * @tc.size: MEDIUM
508  * @tc.type: FUNC
509  * @tc.level Level 1
510  * @tc.require: I7PDZL
511  */
512 HWTEST_F(FileShareTest, File_share_GetMediaSharePath_0003, testing::ext::TestSize.Level1)
513 {
514     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetMediaSharePath_0003";
515     std::string fileUri = "file://media/Photo/test/IMG_12345_/test.JPG";
516     std::string fileUri1 = "file://media/Photo/test/IMG_12345_/test.JPG";
517     vector<string> uriList;
518     vector<string> physicalPathList;
519     uriList.push_back(fileUri);
520     uriList.push_back(fileUri1);
521     int32_t ret = SandboxHelper::GetMediaSharePath(uriList, physicalPathList);
522     EXPECT_EQ(ret, -EINVAL);
523     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetMediaSharePath_0003";
524 }
525 
526 /**
527  * @tc.name: File_share_CheckValidPath_0001
528  * @tc.desc: Test function of CheckValidPath() interface for FAILURE.
529  * @tc.size: MEDIUM
530  * @tc.type: FUNC
531  * @tc.level Level 1
532  * @tc.require: I7PDZL
533  */
534 HWTEST_F(FileShareTest, File_share_CheckValidPath_0001, testing::ext::TestSize.Level1)
535 {
536     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_CheckValidPath_0001";
537     std::string filePath1 = "";
538     auto ret = SandboxHelper::CheckValidPath(filePath1);
539     EXPECT_FALSE(ret);
540 
541     std::string filePath2(PATH_MAX, 't');
542     ret = SandboxHelper::CheckValidPath(filePath2);
543     EXPECT_FALSE(ret);
544     GTEST_LOG_(INFO) << "FileShareTest-end File_share_CheckValidPath_0001";
545 }
546 
547 /**
548  * @tc.name: File_share_IsValidPath_0002
549  * @tc.desc: Test function of CheckValidPath() interface for FAILURE.
550  * @tc.size: MEDIUM
551  * @tc.type: FUNC
552  * @tc.level Level 1
553  * @tc.require: I7PDZL
554  */
555 HWTEST_F(FileShareTest, File_share_IsValidPath_0002, testing::ext::TestSize.Level1)
556 {
557     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_IsValidPath_0002";
558     bool result = SandboxHelper::IsValidPath("../test../test1");
559     EXPECT_FALSE(result);
560     result = SandboxHelper::IsValidPath("/../test../test1");
561     EXPECT_FALSE(result);
562     result = SandboxHelper::IsValidPath("test../../test");
563     EXPECT_FALSE(result);
564     result = SandboxHelper::IsValidPath("test../../");
565     EXPECT_FALSE(result);
566     result = SandboxHelper::IsValidPath("test../test../..");
567     EXPECT_FALSE(result);
568     result = SandboxHelper::IsValidPath("/test/..test/..");
569     EXPECT_FALSE(result);
570 
571     result = SandboxHelper::IsValidPath("test");
572     EXPECT_TRUE(result);
573     result = SandboxHelper::IsValidPath("/test/test../test");
574     EXPECT_TRUE(result);
575     result = SandboxHelper::IsValidPath("/test../test../test");
576     EXPECT_TRUE(result);
577     result = SandboxHelper::IsValidPath("/test../test../test../");
578     EXPECT_TRUE(result);
579     result = SandboxHelper::IsValidPath("/test../test../test../..test");
580     EXPECT_TRUE(result);
581     GTEST_LOG_(INFO) << "FileShareTest-end File_share_IsValidPath_0002";
582 }
583 
584 /**
585  * @tc.name: File_share_GetBackupPhysicalPath_0001
586  * @tc.desc: Test function of GetBackupPhysicalPath() interface for SUCCESS.
587  * @tc.size: MEDIUM
588  * @tc.type: FUNC
589  * @tc.level Level 1
590  * @tc.require: I7PDZL
591  */
592 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0001, testing::ext::TestSize.Level1)
593 {
594     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetBackupPhysicalPath_0001";
595     std::string fileUri = "file://media/Photo/12/IMG_12345_0011/test.jpg";
596     std::string physicalPath;
597     int32_t ret = SandboxHelper::GetBackupPhysicalPath(fileUri, "100", physicalPath);
598     EXPECT_EQ(ret, E_OK);
599     EXPECT_EQ(physicalPath, "/mnt/hmdfs/100/account/cloud_merge_view/files/Photo/11/IMG_12345_0011.jpg");
600     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0001";
601 }
602 
603 /**
604  * @tc.name: File_share_GetBackupPhysicalPath_0002
605  * @tc.desc: Test function of GetBackupPhysicalPath() interface for FAILURE.
606  * @tc.size: MEDIUM
607  * @tc.type: FUNC
608  * @tc.level Level 1
609  * @tc.require: I7PDZL
610  */
611 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0002, testing::ext::TestSize.Level1)
612 {
613     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetBackupPhysicalPath_0002";
614     std::string fileUri = "file://media/Photo/12/IMG_12345_/test.jpg";
615     std::string physicalPath;
616     int32_t ret = SandboxHelper::GetBackupPhysicalPath(fileUri, "100", physicalPath);
617     EXPECT_EQ(ret, -EINVAL);
618     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0002";
619 }
620 
621 /**
622  * @tc.name: File_share_GetBackupPhysicalPath_0003
623  * @tc.desc: Test function of GetBackupPhysicalPath() interface for FAILURE.
624  * @tc.size: MEDIUM
625  * @tc.type: FUNC
626  * @tc.level Level 1
627  * @tc.require: I7PDZL
628  */
629 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0003, testing::ext::TestSize.Level1)
630 {
631     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetBackupPhysicalPath_0003";
632     std::string fileUri = "file://media/Photo/12/IMG_12345_a0011/test.jpg";
633     std::string physicalPath;
634     int32_t ret = SandboxHelper::GetBackupPhysicalPath(fileUri, "100", physicalPath);
635     EXPECT_EQ(ret, -EINVAL);
636     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0003";
637 }
638 
639 /**
640  * @tc.name: File_share_GetBackupPhysicalPath_0004
641  * @tc.desc: Test function of GetBackupPhysicalPath() interface for FAILURE.
642  * @tc.size: MEDIUM
643  * @tc.type: FUNC
644  * @tc.level Level 1
645  * @tc.require: I7PDZL
646  */
647 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0004, testing::ext::TestSize.Level1)
648 {
649     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetBackupPhysicalPath_0004";
650     std::string fileUri = "file://media/Photo/IMG_12345_999999/test.jpg";
651     std::string physicalPath;
652     int32_t ret = SandboxHelper::GetBackupPhysicalPath(fileUri, "100", physicalPath);
653     EXPECT_EQ(ret, -EINVAL);
654     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0004";
655 }
656 
657 /**
658  * @tc.name: File_share_GetBackupPhysicalPath_0005
659  * @tc.desc: Test function of GetBackupPhysicalPath() interface for SUCCESS.
660  * @tc.size: MEDIUM
661  * @tc.type: FUNC
662  * @tc.level Level 1
663  * @tc.require: I7PDZL
664  */
665 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0005, testing::ext::TestSize.Level1)
666 {
667     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetBackupPhysicalPath_0005";
668     std::string strPrefix = "file://media/";
669     std::string fileUri = "Photo/12/IMG_12345_999999/test.jpg";
670     std::string physicalPath;
671     int32_t ret = SandboxHelper::GetBackupPhysicalPath(strPrefix + SandboxHelper::Encode(fileUri), "100", physicalPath);
672     EXPECT_EQ(ret, E_OK);
673     EXPECT_EQ(physicalPath, "/mnt/hmdfs/100/account/cloud_merge_view/files/Photo/575/IMG_12345_999999.jpg");
674 
675     std::string fileUri2 = "Photo/12/IMG_12345_999999/test .jpg";
676     std::string physicalPath2;
677     ret = SandboxHelper::GetBackupPhysicalPath(strPrefix + SandboxHelper::Encode(fileUri2), "100", physicalPath2);
678     EXPECT_EQ(ret, E_OK);
679     EXPECT_EQ(physicalPath2, "/mnt/hmdfs/100/account/cloud_merge_view/files/Photo/575/IMG_12345_999999.jpg");
680     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0005";
681 }
682 
683 /**
684  * @tc.name: File_share_GetBackupPhysicalPath_0006
685  * @tc.desc: Test function of GetBackupPhysicalPath() interface for FAILURE.
686  * @tc.size: MEDIUM
687  * @tc.type: FUNC
688  * @tc.level Level 1
689  * @tc.require: I7PDZL
690  */
691 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0006, testing::ext::TestSize.Level1)
692 {
693     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0006";
694     std::string fileUri = "file://media/Photo/12/IMG_12345_999999/test.jpg/other";
695     std::string physicalPath;
696     int32_t ret = SandboxHelper::GetBackupPhysicalPath(fileUri, "100", physicalPath);
697     EXPECT_EQ(ret, -EINVAL);
698     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0006";
699 }
700 
701 /**
702  * @tc.name: File_share_GetBackupPhysicalPath_0007
703  * @tc.desc: Test function of GetBackupPhysicalPath() interface for FAILURE.
704  * @tc.size: MEDIUM
705  * @tc.type: FUNC
706  * @tc.level Level 1
707  * @tc.require: I7PDZL
708  */
709 HWTEST_F(FileShareTest, File_share_GetBackupPhysicalPath_0007, testing::ext::TestSize.Level1)
710 {
711     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalPath_0007";
712     std::string fileUri0 = "file://docs/storage/Users/currentUser/../test../test1";
713     std::string fileUri1 = "file://docs/storage/Users/currentUser/test../../test";
714     std::string fileUri2 = "file://docs/storage/Users/currentUser/test../../";
715     std::string fileUri3 = "file://docs/storage/Users/currentUser/test../test../..";
716     std::string fileUri4 = "file://docs/storage/Users/currentUser/test/..test/..";
717     std::string fileUri5 = "file://docs/storage/Users/currentUser/test/test../test";
718     std::string fileUri6 = "file://docs/storage/Users/currentUser/test../test../test";
719     std::string fileUri7 = "file://docs/storage/Users/currentUser/test../test../test../..test";
720     std::string physicalPath;
721     int32_t ret = SandboxHelper::GetBackupPhysicalPath(fileUri0, "100", physicalPath);
722     EXPECT_EQ(ret, -EINVAL);
723     ret = SandboxHelper::GetBackupPhysicalPath(fileUri1, "100", physicalPath);
724     EXPECT_EQ(ret, -EINVAL);
725     ret = SandboxHelper::GetBackupPhysicalPath(fileUri2, "100", physicalPath);
726     EXPECT_EQ(ret, -EINVAL);
727     ret = SandboxHelper::GetBackupPhysicalPath(fileUri3, "100", physicalPath);
728     EXPECT_EQ(ret, -EINVAL);
729     ret = SandboxHelper::GetBackupPhysicalPath(fileUri4, "100", physicalPath);
730     EXPECT_EQ(ret, -EINVAL);
731     ret = SandboxHelper::GetBackupPhysicalPath(fileUri5, "100", physicalPath);
732     EXPECT_EQ(ret, E_OK);
733     ret = SandboxHelper::GetBackupPhysicalPath(fileUri6, "100", physicalPath);
734     EXPECT_EQ(ret, E_OK);
735     ret = SandboxHelper::GetBackupPhysicalPath(fileUri7, "100", physicalPath);
736     EXPECT_EQ(ret, E_OK);
737     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetBackupPhysicalPath_0007";
738 }
739 
740 /**
741  * @tc.name: File_share_GetNetworkIdFromUri_001
742  * @tc.desc: Test function of GetNetworkIdFromUri() interface for FAILURE.
743  * @tc.size: MEDIUM
744  * @tc.type: FUNC
745  * @tc.level Level 1
746  * @tc.require: I7PDZL
747  */
748 HWTEST_F(FileShareTest, File_share_GetNetworkIdFromUri_001, testing::ext::TestSize.Level1)
749 {
750     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetNetworkIdFromUri_001";
751     std::string fileUri = "file://docs/storage/Users/currentUser/test.jpg?networkid=***";
752     std::string result = "***";
753     std::string networkId;
754     SandboxHelper::GetNetworkIdFromUri(fileUri, networkId);
755     EXPECT_EQ(result, networkId);
756     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetNetworkIdFromUri_001";
757 }
758 
759 /**
760  * @tc.name: File_share_GetNetworkIdFromUri_002
761  * @tc.desc: Test function of GetNetworkIdFromUri() interface for FAILURE.
762  * @tc.size: MEDIUM
763  * @tc.type: FUNC
764  * @tc.level Level 1
765  * @tc.require: I7PDZL
766  */
767 HWTEST_F(FileShareTest, File_share_GetNetworkIdFromUri_002, testing::ext::TestSize.Level1)
768 {
769     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetNetworkIdFromUri_002";
770     std::string fileUri = "file://docs/storage/Users/currentUser/test.jpg?networkid=";
771     std::string result = "";
772     std::string networkId;
773     SandboxHelper::GetNetworkIdFromUri(fileUri, networkId);
774     EXPECT_EQ(result, networkId);
775     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetNetworkIdFromUri_002";
776 }
777 
778 /**
779  * @tc.name: File_share_GetNetworkIdFromUri_003
780  * @tc.desc: Test function of GetNetworkIdFromUri() interface for FAILURE.
781  * @tc.size: MEDIUM
782  * @tc.type: FUNC
783  * @tc.level Level 1
784  * @tc.require: I7PDZL
785  */
786 HWTEST_F(FileShareTest, File_share_GetNetworkIdFromUri_003, testing::ext::TestSize.Level1)
787 {
788     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetNetworkIdFromUri_003";
789     std::string fileUri = "file://docs/storage/Users/currentUser/test.jpg?networkid=123456&789";
790     std::string result = "123456";
791     std::string networkId;
792     SandboxHelper::GetNetworkIdFromUri(fileUri, networkId);
793     EXPECT_EQ(result, networkId);
794     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetNetworkIdFromUri_003";
795 }
796 
797 /**
798  * @tc.name: File_share_GetNetworkIdFromUri_004
799  * @tc.desc: Test function of GetNetworkIdFromUri() interface for FAILURE.
800  * @tc.size: MEDIUM
801  * @tc.type: FUNC
802  * @tc.level Level 1
803  * @tc.require: I7PDZL
804  */
805 HWTEST_F(FileShareTest, File_share_GetNetworkIdFromUri_004, testing::ext::TestSize.Level1)
806 {
807     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetNetworkIdFromUri_004";
808     std::string fileUri = "file://docs/storage/Users/currentUser/test.jpg?networkid=123456/test/1.txt";
809     std::string result = "";
810     std::string networkId;
811     SandboxHelper::GetNetworkIdFromUri(fileUri, networkId);
812     EXPECT_EQ(result, networkId);
813     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetNetworkIdFromUri_004";
814 }
815 
816 /**
817  * @tc.name: File_share_GetNetworkIdFromUri_005
818  * @tc.desc: Test function of GetNetworkIdFromUri() interface for FAILURE.
819  * @tc.size: MEDIUM
820  * @tc.type: FUNC
821  * @tc.level Level 1
822  * @tc.require: I7PDZL
823  */
824 HWTEST_F(FileShareTest, File_share_GetNetworkIdFromUri_005, testing::ext::TestSize.Level1)
825 {
826     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetNetworkIdFromUri_005";
827     std::string fileUri = "file://docs/storage/Users/currentUser/test.jpg?query=123456789&?networkid=123456";
828     std::string result = "123456";
829     std::string networkId;
830     SandboxHelper::GetNetworkIdFromUri(fileUri, networkId);
831     EXPECT_EQ(result, networkId);
832     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetNetworkIdFromUri_005";
833 }
834 
835 /**
836  * @tc.name: File_share_GetDocsDir_001
837  * @tc.desc: Test function of GetDocsDir()
838  * @tc.size: MEDIUM
839  * @tc.type: FUNC
840  * @tc.level Level 1
841  * @tc.require: I7PDZL
842  */
843 HWTEST_F(FileShareTest, File_share_GetDocsDir_001, testing::ext::TestSize.Level1)
844 {
845     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetDocsDir_001";
846     std::string uri = "file://docs/storage/Users/currentUser/test.jpg?networkid=123456";
847     FileShareInfo info;
848     info.providerBundleName_ = "docs";
849     info.targetBundleName_ = "com.demo.a";
850     info.providerLowerPath_ = "/mnt/hmdfs/100/account/device_view/123456/files/docs/test.jpg";
851     info.currentUid_ = "100";
852 
853     int32_t ret = GetDocsDir(uri, info);
854     EXPECT_EQ(ret, -EINVAL);
855 
856     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetDocsDir_001";
857 }
858 
859 /**
860  * @tc.name: File_share_GetDocsDir_002
861  * @tc.desc: Test function of GetDocsDir()
862  * @tc.size: MEDIUM
863  * @tc.type: FUNC
864  * @tc.level Level 1
865  * @tc.require: I7PDZL
866  */
867 HWTEST_F(FileShareTest, File_share_GetDocsDir_002, testing::ext::TestSize.Level1)
868 {
869     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetDocsDir_002";
870     std::string uri = "file://docs/storage/Users/currentUser/test.jpg";
871     FileShareInfo info;
872     info.providerBundleName_ = "docs";
873     info.targetBundleName_ = "com.demo.a";
874     info.providerLowerPath_ = "/mnt/hmdfs/100/account/device_view/123456/files/docs/test.jpg";
875     info.currentUid_ = "100";
876 
877     int32_t ret = GetDocsDir(uri, info);
878     EXPECT_EQ(ret, -EINVAL);
879 
880     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetDocsDir_002";
881 }
882 
883 /**
884  * @tc.name: File_share_GetDocsDir_003
885  * @tc.desc: Test function of GetDocsDir()
886  * @tc.size: MEDIUM
887  * @tc.type: FUNC
888  * @tc.level Level 1
889  * @tc.require: I7PDZL
890  */
891 HWTEST_F(FileShareTest, File_share_GetDocsDir_003, testing::ext::TestSize.Level1)
892 {
893     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetDocsDir_003";
894     std::string uri = "/mnt/hmdfs/100/account/device_view";
895     FileShareInfo info;
896     info.providerBundleName_ = "docs";
897     info.targetBundleName_ = "com.demo.a";
898     info.providerLowerPath_ = "/mnt/hmdfs/100/account/device_view/123456/files/docs/test.jpg";
899     info.currentUid_ = "100";
900 
901     int32_t ret = GetDocsDir(uri, info);
902     EXPECT_EQ(ret, -EINVAL);
903 
904     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetDocsDir_003";
905 }
906 
907 /**
908  * @tc.name: File_share_GetLowerDir_001
909  * @tc.desc: Test function of GetLowerDir()
910  * @tc.size: MEDIUM
911  * @tc.type: FUNC
912  * @tc.level Level 1
913  * @tc.require: I7PDZL
914  */
915 HWTEST_F(FileShareTest, File_share_GetLowerDir_001, testing::ext::TestSize.Level1)
916 {
917     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetLowerDir_001";
918     std::string lowerPathHead = "/data/app/el5/<currentUserId>/database/<PackageName>/<networkId>";
919     std::string usrId = "100";
920     std::string bundleName = "com.demo.a";
921     std::string networkId = "123456";
922 
923     std::string ret = SandboxHelper::GetLowerDir(lowerPathHead, usrId, bundleName, networkId);
924     EXPECT_EQ(ret, "/data/app/el5/100/database/com.demo.a/123456");
925 
926     lowerPathHead = "/data/app/el5";
927     ret = SandboxHelper::GetLowerDir(lowerPathHead, usrId, bundleName, networkId);
928     EXPECT_EQ(ret, lowerPathHead);
929 
930     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetLowerDir_001";
931 }
932 
933 /**
934  * @tc.name: File_share_GetPhysicalDir_001
935  * @tc.desc: Test function of GetPhysicalDir()
936  * @tc.size: MEDIUM
937  * @tc.type: FUNC
938  * @tc.level Level 1
939  * @tc.require: I7PDZL
940  */
941 HWTEST_F(FileShareTest, File_share_GetPhysicalDir_001, testing::ext::TestSize.Level1)
942 {
943     GTEST_LOG_(INFO) << "FileShareTest-begin File_share_GetPhysicalDir_001";
944     std::string uri = "file://com.demo.a/data/storage/el2/distributedfiles/remote_share.txt";
945     std::string usrId = "100";
946     std::string physicalDir;
947 
948     int32_t ret = SandboxHelper::GetPhysicalDir(uri, usrId, physicalDir);
949     EXPECT_EQ(ret, E_OK);
950     EXPECT_EQ(physicalDir, "/mnt/hmdfs/100/account/device_view/local/data/com.demo.a/");
951 
952     uri = "file://com.demo.a/data/storage/el2/distributedfiles/../remote_share.txt";
953     ret = SandboxHelper::GetPhysicalDir(uri, usrId, physicalDir);
954     EXPECT_EQ(ret, -EINVAL);
955 
956     uri = "file://media/data/storage/el2/distributedfiles/remote_share.txt";
957     ret = SandboxHelper::GetPhysicalDir(uri, usrId, physicalDir);
958     EXPECT_EQ(ret, -EINVAL);
959 
960     uri = "file://com.demo.a/data/storage/el12/distributedfiles/remote_share.txt";
961     ret = SandboxHelper::GetPhysicalDir(uri, usrId, physicalDir);
962     EXPECT_EQ(ret, -EINVAL);
963 
964     GTEST_LOG_(INFO) << "FileShareTest-end File_share_GetPhysicalDir_001";
965 }
966 
967 } // namespace