Add PathRemoveBackslash()

Signed-off-by: Simon Rozman <simon@rozman.si>
This commit is contained in:
2022-10-17 15:35:05 +02:00
parent 0fea2d1ed7
commit 93b3157f31
2 changed files with 80 additions and 0 deletions

View File

@@ -26,5 +26,39 @@ namespace UnitTests
Assert::IsTrue(::PathCanonicalizeW(path, L"C:\\Windows\\Temp\\test\\.."));
Assert::AreEqual(L"C:\\Windows\\Temp", path.c_str(), true);
}
TEST_METHOD(PathRemoveBackslashA)
{
string path;
static const char normal_path[] = "C:\\Windows\\Temp\\test";
path = normal_path; path += '\\'; ::PathRemoveBackslashA(path);
Assert::AreEqual(normal_path, path.c_str());
path = normal_path; ::PathRemoveBackslashA(path);
Assert::AreEqual(normal_path, path.c_str());
static const char very_long_path[] = "C:\\Windows\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\test";
path = very_long_path; path += '\\'; ::PathRemoveBackslashA(path);
Assert::AreEqual(very_long_path, path.c_str());
path = very_long_path; ::PathRemoveBackslashA(path);
Assert::AreEqual(very_long_path, path.c_str());
}
TEST_METHOD(PathRemoveBackslashW)
{
wstring path;
static const wchar_t normal_path[] = L"C:\\Windows\\Temp\\test";
path = normal_path; path += L'\\'; ::PathRemoveBackslashW(path);
Assert::AreEqual(normal_path, path.c_str());
path = normal_path; ::PathRemoveBackslashW(path);
Assert::AreEqual(normal_path, path.c_str());
static const wchar_t very_long_path[] = L"C:\\Windows\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\Temp\\test";
path = very_long_path; path += L'\\'; ::PathRemoveBackslashW(path);
Assert::AreEqual(very_long_path, path.c_str());
path = very_long_path; ::PathRemoveBackslashW(path);
Assert::AreEqual(very_long_path, path.c_str());
}
};
}