win32: more tests for `git_win32_remove_path`
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
diff --git a/tests/path/win32.c b/tests/path/win32.c
index ee87b70..a5413c7 100644
--- a/tests/path/win32.c
+++ b/tests/path/win32.c
@@ -163,7 +163,35 @@ static void test_remove_namespace(const wchar_t *in, const wchar_t *expected)
void test_path_win32__remove_namespace(void)
{
+ test_remove_namespace(L"\\\\?\\C:\\Temp\\Foo", L"C:\\Temp\\Foo");
+ test_remove_namespace(L"\\\\?\\C:\\", L"C:\\");
+ test_remove_namespace(L"\\\\?\\", L"");
+
+ test_remove_namespace(L"\\??\\C:\\Temp\\Foo", L"C:\\Temp\\Foo");
+ test_remove_namespace(L"\\??\\C:\\", L"C:\\");
+ test_remove_namespace(L"\\??\\", L"");
+
test_remove_namespace(L"\\\\?\\UNC\\server\\C$\\folder", L"\\\\server\\C$\\folder");
+ test_remove_namespace(L"\\\\?\\UNC\\server\\C$\\folder", L"\\\\server\\C$\\folder");
+ test_remove_namespace(L"\\\\?\\UNC\\server\\C$", L"\\\\server\\C$");
+ test_remove_namespace(L"\\\\?\\UNC\\server\\", L"\\\\server");
+ test_remove_namespace(L"\\\\?\\UNC\\server", L"\\\\server");
+
+ test_remove_namespace(L"\\??\\UNC\\server\\C$\\folder", L"\\\\server\\C$\\folder");
+ test_remove_namespace(L"\\??\\UNC\\server\\C$\\folder", L"\\\\server\\C$\\folder");
+ test_remove_namespace(L"\\??\\UNC\\server\\C$", L"\\\\server\\C$");
+ test_remove_namespace(L"\\??\\UNC\\server\\", L"\\\\server");
+ test_remove_namespace(L"\\??\\UNC\\server", L"\\\\server");
+
+ test_remove_namespace(L"\\\\server\\C$\\folder", L"\\\\server\\C$\\folder");
+ test_remove_namespace(L"\\\\server\\C$", L"\\\\server\\C$");
+ test_remove_namespace(L"\\\\server\\", L"\\\\server");
+ test_remove_namespace(L"\\\\server", L"\\\\server");
+
+ test_remove_namespace(L"C:\\Foo\\Bar", L"C:\\Foo\\Bar");
+ test_remove_namespace(L"C:\\", L"C:\\");
+ test_remove_namespace(L"", L"");
+
}
void test_path_win32__canonicalize(void)