[incfs] Use the new IncFs_MakeDirs() function
This gets rid of annoying warnings in logcat about not being
able to create a directory and then directory already existing
Bug: 153704006
Test: atest IncrementalServiceTest
Test: adb install megacity.apk
Change-Id: Ib718960287f93cb383c06c9b9e3d0abf1ec42916
diff --git a/services/incremental/test/IncrementalServiceTest.cpp b/services/incremental/test/IncrementalServiceTest.cpp
index 8a06053..7a85602 100644
--- a/services/incremental/test/IncrementalServiceTest.cpp
+++ b/services/incremental/test/IncrementalServiceTest.cpp
@@ -270,6 +270,8 @@
ErrorCode(const Control& control, std::string_view path, int mode, FileId id,
NewFileParams params));
MOCK_CONST_METHOD3(makeDir, ErrorCode(const Control& control, std::string_view path, int mode));
+ MOCK_CONST_METHOD3(makeDirs,
+ ErrorCode(const Control& control, std::string_view path, int mode));
MOCK_CONST_METHOD2(getMetadata, RawMetadata(const Control& control, FileId fileid));
MOCK_CONST_METHOD2(getMetadata, RawMetadata(const Control& control, std::string_view path));
MOCK_CONST_METHOD2(getFileId, FileId(const Control& control, std::string_view path));
@@ -723,31 +725,14 @@
auto first = "first"sv;
auto second = "second"sv;
auto third = "third"sv;
- auto parent_path = std::string(first) + "/" + std::string(second);
- auto dir_path = parent_path + "/" + std::string(third);
+ auto dir_path = std::string(first) + "/" + std::string(second) + "/" + std::string(third);
- auto checkArgFor = [&](std::string_view expected, std::string_view arg) {
- return arg.starts_with(mRootDir.path) && arg.ends_with("/mount/st_1_0/"s += expected);
- };
-
- {
- InSequence seq;
- EXPECT_CALL(*mIncFs,
- makeDir(_, Truly([&](auto arg) { return checkArgFor(dir_path, arg); }), _))
- .WillOnce(Return(-ENOENT));
- EXPECT_CALL(*mIncFs,
- makeDir(_, Truly([&](auto arg) { return checkArgFor(parent_path, arg); }), _))
- .WillOnce(Return(-ENOENT));
- EXPECT_CALL(*mIncFs,
- makeDir(_, Truly([&](auto arg) { return checkArgFor(first, arg); }), _))
- .WillOnce(Return(0));
- EXPECT_CALL(*mIncFs,
- makeDir(_, Truly([&](auto arg) { return checkArgFor(parent_path, arg); }), _))
- .WillOnce(Return(0));
- EXPECT_CALL(*mIncFs,
- makeDir(_, Truly([&](auto arg) { return checkArgFor(dir_path, arg); }), _))
- .WillOnce(Return(0));
- }
+ EXPECT_CALL(*mIncFs,
+ makeDirs(_, Truly([&](std::string_view arg) {
+ return arg.starts_with(mRootDir.path) &&
+ arg.ends_with("/mount/st_1_0/" + dir_path);
+ }),
+ _));
auto res = mIncrementalService->makeDirs(storageId, dir_path, 0555);
ASSERT_EQ(res, 0);
}