Skip to content

Commit

Permalink
Make sure that an existing path is a directory for create_directories (
Browse files Browse the repository at this point in the history
…#98)

Signed-off-by: Christophe Bedard <[email protected]>
  • Loading branch information
christophebedard authored Oct 5, 2020
1 parent 4e47444 commit 1973577
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 1 deletion.
2 changes: 1 addition & 1 deletion include/rcpputils/filesystem_helper.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -511,7 +511,7 @@ inline bool create_directories(const path & p)
#endif
}
}
return status == 0;
return status == 0 && p_built.is_directory();
}

/**
Expand Down
4 changes: 4 additions & 0 deletions test/test_filesystem_helper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,7 @@ TEST(TestFilesystemHelper, filesystem_manipulation)
EXPECT_TRUE(rcpputils::fs::exists(file));
EXPECT_TRUE(rcpputils::fs::is_regular_file(file));
EXPECT_FALSE(rcpputils::fs::is_directory(file));
EXPECT_FALSE(rcpputils::fs::create_directories(file));
EXPECT_GE(rcpputils::fs::file_size(file), expected_file_size);
EXPECT_THROW(rcpputils::fs::file_size(dir), std::system_error) <<
"file_size is only applicable for files!";
Expand Down Expand Up @@ -352,6 +353,9 @@ TEST(TestFilesystemHelper, filesystem_manipulation)
ASSERT_FALSE(rcpputils::fs::exists(file));
}
ASSERT_FALSE(rcpputils::fs::exists(dir));

// Empty path/directory cannot be created
EXPECT_FALSE(rcpputils::fs::create_directories(rcpputils::fs::path("")));
}

TEST(TestFilesystemHelper, remove_extension)
Expand Down

0 comments on commit 1973577

Please sign in to comment.