clang-format

This commit is contained in:
gabime 2019-10-25 15:44:53 +03:00
parent bfc76278a9
commit c40555c0ac
2 changed files with 53 additions and 56 deletions

View File

@ -485,30 +485,30 @@ SPDLOG_INLINE bool create_dir(filename_t path)
{ {
return true; return true;
} }
#ifdef _WIN32 #ifdef _WIN32
// support forward slash in windows // support forward slash in windows
std::replace(path.begin(), path.end(), '/', folder_sep); std::replace(path.begin(), path.end(), '/', folder_sep);
#endif #endif
size_t search_offset = 0; size_t search_offset = 0;
do do
{ {
auto token_pos = path.find(folder_sep, search_offset); auto token_pos = path.find(folder_sep, search_offset);
// treat the entire path as a folder if no folder separator not found // treat the entire path as a folder if no folder separator not found
if (token_pos == filename_t::npos) if (token_pos == filename_t::npos)
{ {
token_pos = path.size(); token_pos = path.size();
} }
auto subdir = path.substr(0, token_pos); auto subdir = path.substr(0, token_pos);
if (!subdir.empty() && !file_exists(subdir) && !mkdir_(subdir)) if (!subdir.empty() && !file_exists(subdir) && !mkdir_(subdir))
{ {
return false; // return error if failed creating dir return false; // return error if failed creating dir
} }
search_offset = token_pos + 1; search_offset = token_pos + 1;
} while (search_offset < path.size()); } while (search_offset < path.size());
return true; return true;
} }
@ -519,11 +519,11 @@ SPDLOG_INLINE bool create_dir(filename_t path)
// "abc" => "" // "abc" => ""
// "abc///" => "abc//" // "abc///" => "abc//"
SPDLOG_INLINE filename_t dir_name(filename_t path) SPDLOG_INLINE filename_t dir_name(filename_t path)
{ {
#ifdef _WIN32 #ifdef _WIN32
// support forward slash in windows // support forward slash in windows
std::replace(path.begin(), path.end(), '/', folder_sep); std::replace(path.begin(), path.end(), '/', folder_sep);
#endif #endif
auto pos = path.find_last_of(folder_sep); auto pos = path.find_last_of(folder_sep);
return pos != filename_t::npos ? path.substr(0, pos) : filename_t{}; return pos != filename_t::npos ? path.substr(0, pos) : filename_t{};
} }

View File

@ -7,31 +7,29 @@ using spdlog::details::os::create_dir;
using spdlog::details::os::file_exists; using spdlog::details::os::file_exists;
bool try_create_dir(const char *path, const char *normalized_path) bool try_create_dir(const char *path, const char *normalized_path)
{ {
auto rv = create_dir(path); auto rv = create_dir(path);
REQUIRE(rv == true); REQUIRE(rv == true);
return file_exists(normalized_path); return file_exists(normalized_path);
} }
TEST_CASE("create_dir", "[create_dir]") TEST_CASE("create_dir", "[create_dir]")
{ {
prepare_logdir(); prepare_logdir();
REQUIRE(try_create_dir("test_logs/dir1/dir1", "test_logs/dir1/dir1")); REQUIRE(try_create_dir("test_logs/dir1/dir1", "test_logs/dir1/dir1"));
REQUIRE(try_create_dir("test_logs/dir1/dir1", "test_logs/dir1/dir1")); //test existing REQUIRE(try_create_dir("test_logs/dir1/dir1", "test_logs/dir1/dir1")); // test existing
REQUIRE(try_create_dir("test_logs/dir1///dir2//", "test_logs/dir1/dir2")); REQUIRE(try_create_dir("test_logs/dir1///dir2//", "test_logs/dir1/dir2"));
REQUIRE(try_create_dir("./test_logs/dir1/dir3", "test_logs/dir1/dir3")); REQUIRE(try_create_dir("./test_logs/dir1/dir3", "test_logs/dir1/dir3"));
REQUIRE(try_create_dir("test_logs/../test_logs/dir1/dir4", "test_logs/dir1/dir4")); REQUIRE(try_create_dir("test_logs/../test_logs/dir1/dir4", "test_logs/dir1/dir4"));
#ifdef WIN32 #ifdef WIN32
// test backslash folder separator // test backslash folder separator
REQUIRE(try_create_dir("test_logs\\dir1\\dir222", "test_logs\\dir1\\dir222")); REQUIRE(try_create_dir("test_logs\\dir1\\dir222", "test_logs\\dir1\\dir222"));
REQUIRE(try_create_dir("test_logs\\dir1\\dir223\\", "test_logs\\dir1\\dir223\\")); REQUIRE(try_create_dir("test_logs\\dir1\\dir223\\", "test_logs\\dir1\\dir223\\"));
REQUIRE(try_create_dir(".\\test_logs\\dir1\\dir2\\dir99\\..\\dir23", "test_logs\\dir1\\dir2\\dir23")); REQUIRE(try_create_dir(".\\test_logs\\dir1\\dir2\\dir99\\..\\dir23", "test_logs\\dir1\\dir2\\dir23"));
REQUIRE(try_create_dir("test_logs\\..\\test_logs\\dir1\\dir5", "test_logs\\dir1\\dir5")); REQUIRE(try_create_dir("test_logs\\..\\test_logs\\dir1\\dir5", "test_logs\\dir1\\dir5"));
#endif #endif
} }
TEST_CASE("dir_name", "[create_dir]") TEST_CASE("dir_name", "[create_dir]")
@ -39,36 +37,35 @@ TEST_CASE("dir_name", "[create_dir]")
using spdlog::details::os::dir_name; using spdlog::details::os::dir_name;
REQUIRE(dir_name("").empty()); REQUIRE(dir_name("").empty());
REQUIRE(dir_name("dir").empty()); REQUIRE(dir_name("dir").empty());
#ifdef WIN32 #ifdef WIN32
REQUIRE(dir_name(R"(dir\)") == "dir"); REQUIRE(dir_name(R"(dir\)") == "dir");
REQUIRE(dir_name(R"(dir\\\)") == R"(dir\\)"); REQUIRE(dir_name(R"(dir\\\)") == R"(dir\\)");
REQUIRE(dir_name(R"(dir\file)") == "dir"); REQUIRE(dir_name(R"(dir\file)") == "dir");
REQUIRE(dir_name(R"(dir/file)") == "dir"); REQUIRE(dir_name(R"(dir/file)") == "dir");
REQUIRE(dir_name(R"(dir\file.txt)") == "dir"); REQUIRE(dir_name(R"(dir\file.txt)") == "dir");
REQUIRE(dir_name(R"(dir/file)") == "dir"); REQUIRE(dir_name(R"(dir/file)") == "dir");
REQUIRE(dir_name(R"(dir\file.txt\)") == R"(dir\file.txt)"); REQUIRE(dir_name(R"(dir\file.txt\)") == R"(dir\file.txt)");
REQUIRE(dir_name(R"(dir/file.txt/)") == R"(dir\file.txt)"); REQUIRE(dir_name(R"(dir/file.txt/)") == R"(dir\file.txt)");
REQUIRE(dir_name(R"(\dir\file.txt)") == R"(\dir)"); REQUIRE(dir_name(R"(\dir\file.txt)") == R"(\dir)");
REQUIRE(dir_name(R"(/dir/file.txt)") == R"(\dir)"); REQUIRE(dir_name(R"(/dir/file.txt)") == R"(\dir)");
REQUIRE(dir_name(R"(\\dir\file.txt)") == R"(\\dir)"); REQUIRE(dir_name(R"(\\dir\file.txt)") == R"(\\dir)");
REQUIRE(dir_name(R"(//dir/file.txt)") == R"(\\dir)"); REQUIRE(dir_name(R"(//dir/file.txt)") == R"(\\dir)");
REQUIRE(dir_name(R"(..\file.txt)") == ".."); REQUIRE(dir_name(R"(..\file.txt)") == "..");
REQUIRE(dir_name(R"(../file.txt)") == ".."); REQUIRE(dir_name(R"(../file.txt)") == "..");
REQUIRE(dir_name(R"(.\file.txt)") == "."); REQUIRE(dir_name(R"(.\file.txt)") == ".");
REQUIRE(dir_name(R"(./file.txt)") == "."); REQUIRE(dir_name(R"(./file.txt)") == ".");
REQUIRE(dir_name(R"(c:\\a\b\c\d\file.txt)") == R"(c:\\a\b\c\d)"); REQUIRE(dir_name(R"(c:\\a\b\c\d\file.txt)") == R"(c:\\a\b\c\d)");
REQUIRE(dir_name(R"(c://a/b/c/d/file.txt)") == R"(c:\\a\b\c\d)"); REQUIRE(dir_name(R"(c://a/b/c/d/file.txt)") == R"(c:\\a\b\c\d)");
#else #else
REQUIRE(dir_name("dir/") == "dir"); REQUIRE(dir_name("dir/") == "dir");
REQUIRE(dir_name("dir///") == "dir//"); REQUIRE(dir_name("dir///") == "dir//");
REQUIRE(dir_name("dir/file") == "dir"); REQUIRE(dir_name("dir/file") == "dir");
REQUIRE(dir_name("dir/file.txt") == "dir"); REQUIRE(dir_name("dir/file.txt") == "dir");
REQUIRE(dir_name("dir/file.txt/") == "dir/file.txt"); REQUIRE(dir_name("dir/file.txt/") == "dir/file.txt");
REQUIRE(dir_name("/dir/file.txt") == "/dir"); REQUIRE(dir_name("/dir/file.txt") == "/dir");
REQUIRE(dir_name("//dir/file.txt") == "//dir"); REQUIRE(dir_name("//dir/file.txt") == "//dir");
REQUIRE(dir_name("../file.txt") == ".."); REQUIRE(dir_name("../file.txt") == "..");
REQUIRE(dir_name("./file.txt") == "."); REQUIRE(dir_name("./file.txt") == ".");
#endif #endif
} }