shlwapi/tests: Move the UrlCanonicalize() tests into test_UrlCanonicalizeA().
This commit is contained in:
parent
6ff5c3b500
commit
dc800b56b6
1 changed files with 120 additions and 125 deletions
|
@ -74,127 +74,6 @@ static const TEST_URL_APPLY TEST_APPLY[] = {
|
|||
{"file://server/share", URL_APPLY_GUESSSCHEME, S_FALSE},
|
||||
};
|
||||
|
||||
/* ################ */
|
||||
|
||||
typedef struct _TEST_URL_CANONICALIZE {
|
||||
const char *url;
|
||||
DWORD flags;
|
||||
const char *expecturl;
|
||||
BOOL todo;
|
||||
} TEST_URL_CANONICALIZE;
|
||||
|
||||
static const TEST_URL_CANONICALIZE TEST_CANONICALIZE[] = {
|
||||
{"", 0, ""},
|
||||
{"http://www.winehq.org/tests/../tests/../..", 0, "http://www.winehq.org/", TRUE},
|
||||
{"http://www.winehq.org/..", 0, "http://www.winehq.org/..", FALSE},
|
||||
{"http://www.winehq.org/tests/tests2/../../tests", 0, "http://www.winehq.org/tests", FALSE},
|
||||
{"http://www.winehq.org/tests/../tests", 0, "http://www.winehq.org/tests", FALSE},
|
||||
{"http://www.winehq.org/tests\n", URL_WININET_COMPATIBILITY|URL_ESCAPE_SPACES_ONLY|URL_ESCAPE_UNSAFE, "http://www.winehq.org/tests", FALSE},
|
||||
{"http://www.winehq.org/tests\r", URL_WININET_COMPATIBILITY|URL_ESCAPE_SPACES_ONLY|URL_ESCAPE_UNSAFE, "http://www.winehq.org/tests", FALSE},
|
||||
{"http://www.winehq.org/tests\r", 0, "http://www.winehq.org/tests", FALSE},
|
||||
{"http://www.winehq.org/tests\r", URL_DONT_SIMPLIFY, "http://www.winehq.org/tests", FALSE},
|
||||
{"http://www.winehq.org/tests/../tests/", 0, "http://www.winehq.org/tests/", FALSE},
|
||||
{"http://www.winehq.org/tests/../tests/..", 0, "http://www.winehq.org/", FALSE},
|
||||
{"http://www.winehq.org/tests/../tests/../", 0, "http://www.winehq.org/", FALSE},
|
||||
{"http://www.winehq.org/tests/..", 0, "http://www.winehq.org/", FALSE},
|
||||
{"http://www.winehq.org/tests/../", 0, "http://www.winehq.org/", FALSE},
|
||||
{"http://www.winehq.org/tests/..?query=x&return=y", 0, "http://www.winehq.org/?query=x&return=y", FALSE},
|
||||
{"http://www.winehq.org/tests/../?query=x&return=y", 0, "http://www.winehq.org/?query=x&return=y", FALSE},
|
||||
{"\tht\ttp\t://www\t.w\tineh\t\tq.or\tg\t/\ttests/..\t?\tquer\ty=x\t\t&re\tturn=y\t\t", 0, "http://www.winehq.org/?query=x&return=y", FALSE},
|
||||
{"http://www.winehq.org/tests/..#example", 0, "http://www.winehq.org/#example", FALSE},
|
||||
{"http://www.winehq.org/tests/../#example", 0, "http://www.winehq.org/#example", FALSE},
|
||||
{"http://www.winehq.org/tests\\../#example", 0, "http://www.winehq.org/#example", FALSE},
|
||||
{"http://www.winehq.org/tests/..\\#example", 0, "http://www.winehq.org/#example", FALSE},
|
||||
{"http://www.winehq.org\\tests/../#example", 0, "http://www.winehq.org/#example", FALSE},
|
||||
{"http://www.winehq.org/tests/../#example", URL_DONT_SIMPLIFY, "http://www.winehq.org/tests/../#example", FALSE},
|
||||
{"http://www.winehq.org/tests/foo bar", URL_ESCAPE_SPACES_ONLY | URL_DONT_ESCAPE_EXTRA_INFO, "http://www.winehq.org/tests/foo%20bar", FALSE},
|
||||
{"http://www.winehq.org/tests/foo%20bar", URL_UNESCAPE, "http://www.winehq.org/tests/foo bar", FALSE},
|
||||
{"http://www.winehq.org", 0, "http://www.winehq.org/", FALSE},
|
||||
{"http:///www.winehq.org", 0, "http:///www.winehq.org", FALSE},
|
||||
{"http:////www.winehq.org", 0, "http:////www.winehq.org", FALSE},
|
||||
{"file:///c:/tests/foo%20bar", URL_UNESCAPE, "file:///c:/tests/foo bar", FALSE},
|
||||
{"file:///c:/tests\\foo%20bar", URL_UNESCAPE, "file:///c:/tests/foo bar", FALSE},
|
||||
{"file:///c:/tests/foo%20bar", 0, "file:///c:/tests/foo%20bar", FALSE},
|
||||
{"file:///c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://localhost/c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://localhost\\c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://localhost\\\\c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://localhost\\c:\\tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://c:/tests\\../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file://c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"file:///c://tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\\\tests\\foo bar", FALSE},
|
||||
{"file:///c:\\tests\\foo bar", 0, "file:///c:/tests/foo bar", FALSE},
|
||||
{"file:///c:\\tests\\foo bar", URL_DONT_SIMPLIFY, "file:///c:/tests/foo bar", FALSE},
|
||||
{"file:///c:\\tests\\foobar", 0, "file:///c:/tests/foobar", FALSE},
|
||||
{"file:///c:\\tests\\foobar", URL_WININET_COMPATIBILITY, "file://c:\\tests\\foobar", FALSE},
|
||||
{"file://home/user/file", 0, "file://home/user/file", FALSE},
|
||||
{"file:///home/user/file", 0, "file:///home/user/file", FALSE},
|
||||
{"file:////home/user/file", 0, "file://home/user/file", FALSE},
|
||||
{"file://home/user/file", URL_WININET_COMPATIBILITY, "file://\\\\home\\user\\file", FALSE},
|
||||
{"file:///home/user/file", URL_WININET_COMPATIBILITY, "file://\\home\\user\\file", FALSE},
|
||||
{"file:////home/user/file", URL_WININET_COMPATIBILITY, "file://\\\\home\\user\\file", FALSE},
|
||||
{"file://///home/user/file", URL_WININET_COMPATIBILITY, "file://\\\\home\\user\\file", FALSE},
|
||||
{"file://C:/user/file", 0, "file:///C:/user/file", FALSE},
|
||||
{"file://C:/user/file/../asdf", 0, "file:///C:/user/asdf", FALSE},
|
||||
{"file:///C:/user/file", 0, "file:///C:/user/file", FALSE},
|
||||
{"file:////C:/user/file", 0, "file:///C:/user/file", FALSE},
|
||||
{"file://C:/user/file", URL_WININET_COMPATIBILITY, "file://C:\\user\\file", FALSE},
|
||||
{"file:///C:/user/file", URL_WININET_COMPATIBILITY, "file://C:\\user\\file", FALSE},
|
||||
{"file:////C:/user/file", URL_WININET_COMPATIBILITY, "file://C:\\user\\file", FALSE},
|
||||
{"http:///www.winehq.org", 0, "http:///www.winehq.org", FALSE},
|
||||
{"http:///www.winehq.org", URL_WININET_COMPATIBILITY, "http:///www.winehq.org", FALSE},
|
||||
{"http://www.winehq.org/site/about", URL_FILE_USE_PATHURL, "http://www.winehq.org/site/about", FALSE},
|
||||
{"file_://www.winehq.org/site/about", URL_FILE_USE_PATHURL, "file_://www.winehq.org/site/about", FALSE},
|
||||
{"c:\\dir\\file", 0, "file:///c:/dir/file", FALSE},
|
||||
{"file:///c:\\dir\\file", 0, "file:///c:/dir/file", FALSE},
|
||||
{"c:dir\\file", 0, "file:///c:dir/file", FALSE},
|
||||
{"c:\\tests\\foo bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar", FALSE},
|
||||
{"c:\\tests\\foo bar", 0, "file:///c:/tests/foo%20bar", FALSE},
|
||||
{"c\t:\t\\te\tsts\\fo\to \tbar\t", 0, "file:///c:/tests/foo%20bar", FALSE},
|
||||
{"res://file", 0, "res://file/", FALSE},
|
||||
{"res://file", URL_FILE_USE_PATHURL, "res://file/", FALSE},
|
||||
{"res:///c:/tests/foo%20bar", URL_UNESCAPE, "res:///c:/tests/foo bar", FALSE},
|
||||
{"res:///c:/tests\\foo%20bar", URL_UNESCAPE, "res:///c:/tests\\foo bar", FALSE},
|
||||
{"res:///c:/tests/foo%20bar", 0, "res:///c:/tests/foo%20bar", FALSE},
|
||||
{"res:///c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "res:///c:/tests/foo%20bar", FALSE},
|
||||
{"res://c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "res://c:/tests/foo%20bar", FALSE},
|
||||
{"res://c:/tests\\../tests/foo%20bar", URL_FILE_USE_PATHURL, "res://c:/tests/foo%20bar", FALSE},
|
||||
{"res://c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "res://c:/tests/foo%20bar", FALSE},
|
||||
{"res:///c://tests/foo%20bar", URL_FILE_USE_PATHURL, "res:///c://tests/foo%20bar", FALSE},
|
||||
{"res:///c:\\tests\\foo bar", 0, "res:///c:\\tests\\foo bar", FALSE},
|
||||
{"res:///c:\\tests\\foo bar", URL_DONT_SIMPLIFY, "res:///c:\\tests\\foo bar", FALSE},
|
||||
{"res://c:\\tests\\foo bar/res", URL_FILE_USE_PATHURL, "res://c:\\tests\\foo bar/res", FALSE},
|
||||
{"res://c:\\tests/res\\foo%20bar/strange\\sth", 0, "res://c:\\tests/res\\foo%20bar/strange\\sth", FALSE},
|
||||
{"res://c:\\tests/res\\foo%20bar/strange\\sth", URL_FILE_USE_PATHURL, "res://c:\\tests/res\\foo%20bar/strange\\sth", FALSE},
|
||||
{"res://c:\\tests/res\\foo%20bar/strange\\sth", URL_UNESCAPE, "res://c:\\tests/res\\foo bar/strange\\sth", FALSE},
|
||||
{"/A/../B/./C/../../test_remove_dot_segments", 0, "/test_remove_dot_segments", FALSE},
|
||||
{"/A/../B/./C/../../test_remove_dot_segments", URL_FILE_USE_PATHURL, "/test_remove_dot_segments", FALSE},
|
||||
{"/A/../B/./C/../../test_remove_dot_segments", URL_WININET_COMPATIBILITY, "/test_remove_dot_segments", FALSE},
|
||||
{"/A/B\\C/D\\E", 0, "/A/B\\C/D\\E", FALSE},
|
||||
{"/A/B\\C/D\\E", URL_FILE_USE_PATHURL, "/A/B\\C/D\\E", FALSE},
|
||||
{"/A/B\\C/D\\E", URL_WININET_COMPATIBILITY, "/A/B\\C/D\\E", FALSE},
|
||||
{"///A/../B", 0, "///B", FALSE},
|
||||
{"///A/../B", URL_FILE_USE_PATHURL, "///B", FALSE},
|
||||
{"///A/../B", URL_WININET_COMPATIBILITY, "///B", FALSE},
|
||||
{"A", 0, "A", FALSE},
|
||||
{"../A", 0, "../A", FALSE},
|
||||
{"A/../B", 0, "B", TRUE},
|
||||
{"/uri-res/N2R?urn:sha1:B3K", URL_DONT_ESCAPE_EXTRA_INFO | URL_WININET_COMPATIBILITY /*0x82000000*/, "/uri-res/N2R?urn:sha1:B3K", FALSE} /*LimeWire online installer calls this*/,
|
||||
{"http:www.winehq.org/dir/../index.html", 0, "http:www.winehq.org/index.html"},
|
||||
{"http://localhost/test.html", URL_FILE_USE_PATHURL, "http://localhost/test.html"},
|
||||
{"http://localhost/te%20st.html", URL_FILE_USE_PATHURL, "http://localhost/te%20st.html"},
|
||||
{"http://www.winehq.org/%E6%A1%9C.html", URL_FILE_USE_PATHURL, "http://www.winehq.org/%E6%A1%9C.html"},
|
||||
{"mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"ftp:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "ftp:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"file:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "file:@MSITStore:C:/Program Files/AutoCAD 2008/Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"http:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "http:@MSITStore:C:/Program Files/AutoCAD 2008/Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"http:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", URL_FILE_USE_PATHURL, "http:@MSITStore:C:/Program Files/AutoCAD 2008/Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", URL_FILE_USE_PATHURL, "mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
};
|
||||
|
||||
/* ################ */
|
||||
|
||||
typedef struct _TEST_URL_ESCAPE {
|
||||
const char *url;
|
||||
DWORD flags;
|
||||
|
@ -1084,6 +963,124 @@ static void test_UrlCanonicalizeA(void)
|
|||
DWORD urllen;
|
||||
HRESULT hr;
|
||||
|
||||
static const struct
|
||||
{
|
||||
const char *url;
|
||||
DWORD flags;
|
||||
const char *expect;
|
||||
BOOL todo;
|
||||
}
|
||||
tests[] =
|
||||
{
|
||||
{"", 0, ""},
|
||||
{"http://www.winehq.org/tests/../tests/../..", 0, "http://www.winehq.org/", TRUE},
|
||||
{"http://www.winehq.org/..", 0, "http://www.winehq.org/.."},
|
||||
{"http://www.winehq.org/tests/tests2/../../tests", 0, "http://www.winehq.org/tests"},
|
||||
{"http://www.winehq.org/tests/../tests", 0, "http://www.winehq.org/tests"},
|
||||
{"http://www.winehq.org/tests\n", URL_WININET_COMPATIBILITY|URL_ESCAPE_SPACES_ONLY|URL_ESCAPE_UNSAFE, "http://www.winehq.org/tests"},
|
||||
{"http://www.winehq.org/tests\r", URL_WININET_COMPATIBILITY|URL_ESCAPE_SPACES_ONLY|URL_ESCAPE_UNSAFE, "http://www.winehq.org/tests"},
|
||||
{"http://www.winehq.org/tests\r", 0, "http://www.winehq.org/tests"},
|
||||
{"http://www.winehq.org/tests\r", URL_DONT_SIMPLIFY, "http://www.winehq.org/tests"},
|
||||
{"http://www.winehq.org/tests/../tests/", 0, "http://www.winehq.org/tests/"},
|
||||
{"http://www.winehq.org/tests/../tests/..", 0, "http://www.winehq.org/"},
|
||||
{"http://www.winehq.org/tests/../tests/../", 0, "http://www.winehq.org/"},
|
||||
{"http://www.winehq.org/tests/..", 0, "http://www.winehq.org/"},
|
||||
{"http://www.winehq.org/tests/../", 0, "http://www.winehq.org/"},
|
||||
{"http://www.winehq.org/tests/..?query=x&return=y", 0, "http://www.winehq.org/?query=x&return=y"},
|
||||
{"http://www.winehq.org/tests/../?query=x&return=y", 0, "http://www.winehq.org/?query=x&return=y"},
|
||||
{"\tht\ttp\t://www\t.w\tineh\t\tq.or\tg\t/\ttests/..\t?\tquer\ty=x\t\t&re\tturn=y\t\t", 0, "http://www.winehq.org/?query=x&return=y"},
|
||||
{"http://www.winehq.org/tests/..#example", 0, "http://www.winehq.org/#example"},
|
||||
{"http://www.winehq.org/tests/../#example", 0, "http://www.winehq.org/#example"},
|
||||
{"http://www.winehq.org/tests\\../#example", 0, "http://www.winehq.org/#example"},
|
||||
{"http://www.winehq.org/tests/..\\#example", 0, "http://www.winehq.org/#example"},
|
||||
{"http://www.winehq.org\\tests/../#example", 0, "http://www.winehq.org/#example"},
|
||||
{"http://www.winehq.org/tests/../#example", URL_DONT_SIMPLIFY, "http://www.winehq.org/tests/../#example"},
|
||||
{"http://www.winehq.org/tests/foo bar", URL_ESCAPE_SPACES_ONLY | URL_DONT_ESCAPE_EXTRA_INFO, "http://www.winehq.org/tests/foo%20bar"},
|
||||
{"http://www.winehq.org/tests/foo%20bar", URL_UNESCAPE, "http://www.winehq.org/tests/foo bar"},
|
||||
{"http://www.winehq.org", 0, "http://www.winehq.org/"},
|
||||
{"http:///www.winehq.org", 0, "http:///www.winehq.org"},
|
||||
{"http:////www.winehq.org", 0, "http:////www.winehq.org"},
|
||||
{"file:///c:/tests/foo%20bar", URL_UNESCAPE, "file:///c:/tests/foo bar"},
|
||||
{"file:///c:/tests\\foo%20bar", URL_UNESCAPE, "file:///c:/tests/foo bar"},
|
||||
{"file:///c:/tests/foo%20bar", 0, "file:///c:/tests/foo%20bar"},
|
||||
{"file:///c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://localhost/c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://localhost\\c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://localhost\\\\c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://localhost\\c:\\tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://c:/tests\\../tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file://c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"file:///c://tests/foo%20bar", URL_FILE_USE_PATHURL, "file://c:\\\\tests\\foo bar"},
|
||||
{"file:///c:\\tests\\foo bar", 0, "file:///c:/tests/foo bar"},
|
||||
{"file:///c:\\tests\\foo bar", URL_DONT_SIMPLIFY, "file:///c:/tests/foo bar"},
|
||||
{"file:///c:\\tests\\foobar", 0, "file:///c:/tests/foobar"},
|
||||
{"file:///c:\\tests\\foobar", URL_WININET_COMPATIBILITY, "file://c:\\tests\\foobar"},
|
||||
{"file://home/user/file", 0, "file://home/user/file"},
|
||||
{"file:///home/user/file", 0, "file:///home/user/file"},
|
||||
{"file:////home/user/file", 0, "file://home/user/file"},
|
||||
{"file://home/user/file", URL_WININET_COMPATIBILITY, "file://\\\\home\\user\\file"},
|
||||
{"file:///home/user/file", URL_WININET_COMPATIBILITY, "file://\\home\\user\\file"},
|
||||
{"file:////home/user/file", URL_WININET_COMPATIBILITY, "file://\\\\home\\user\\file"},
|
||||
{"file://///home/user/file", URL_WININET_COMPATIBILITY, "file://\\\\home\\user\\file"},
|
||||
{"file://C:/user/file", 0, "file:///C:/user/file"},
|
||||
{"file://C:/user/file/../asdf", 0, "file:///C:/user/asdf"},
|
||||
{"file:///C:/user/file", 0, "file:///C:/user/file"},
|
||||
{"file:////C:/user/file", 0, "file:///C:/user/file"},
|
||||
{"file://C:/user/file", URL_WININET_COMPATIBILITY, "file://C:\\user\\file"},
|
||||
{"file:///C:/user/file", URL_WININET_COMPATIBILITY, "file://C:\\user\\file"},
|
||||
{"file:////C:/user/file", URL_WININET_COMPATIBILITY, "file://C:\\user\\file"},
|
||||
{"http:///www.winehq.org", 0, "http:///www.winehq.org"},
|
||||
{"http:///www.winehq.org", URL_WININET_COMPATIBILITY, "http:///www.winehq.org"},
|
||||
{"http://www.winehq.org/site/about", URL_FILE_USE_PATHURL, "http://www.winehq.org/site/about"},
|
||||
{"file_://www.winehq.org/site/about", URL_FILE_USE_PATHURL, "file_://www.winehq.org/site/about"},
|
||||
{"c:\\dir\\file", 0, "file:///c:/dir/file"},
|
||||
{"file:///c:\\dir\\file", 0, "file:///c:/dir/file"},
|
||||
{"c:dir\\file", 0, "file:///c:dir/file"},
|
||||
{"c:\\tests\\foo bar", URL_FILE_USE_PATHURL, "file://c:\\tests\\foo bar"},
|
||||
{"c:\\tests\\foo bar", 0, "file:///c:/tests/foo%20bar"},
|
||||
{"c\t:\t\\te\tsts\\fo\to \tbar\t", 0, "file:///c:/tests/foo%20bar"},
|
||||
{"res://file", 0, "res://file/"},
|
||||
{"res://file", URL_FILE_USE_PATHURL, "res://file/"},
|
||||
{"res:///c:/tests/foo%20bar", URL_UNESCAPE, "res:///c:/tests/foo bar"},
|
||||
{"res:///c:/tests\\foo%20bar", URL_UNESCAPE, "res:///c:/tests\\foo bar"},
|
||||
{"res:///c:/tests/foo%20bar", 0, "res:///c:/tests/foo%20bar"},
|
||||
{"res:///c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "res:///c:/tests/foo%20bar"},
|
||||
{"res://c:/tests/../tests/foo%20bar", URL_FILE_USE_PATHURL, "res://c:/tests/foo%20bar"},
|
||||
{"res://c:/tests\\../tests/foo%20bar", URL_FILE_USE_PATHURL, "res://c:/tests/foo%20bar"},
|
||||
{"res://c:/tests/foo%20bar", URL_FILE_USE_PATHURL, "res://c:/tests/foo%20bar"},
|
||||
{"res:///c://tests/foo%20bar", URL_FILE_USE_PATHURL, "res:///c://tests/foo%20bar"},
|
||||
{"res:///c:\\tests\\foo bar", 0, "res:///c:\\tests\\foo bar"},
|
||||
{"res:///c:\\tests\\foo bar", URL_DONT_SIMPLIFY, "res:///c:\\tests\\foo bar"},
|
||||
{"res://c:\\tests\\foo bar/res", URL_FILE_USE_PATHURL, "res://c:\\tests\\foo bar/res"},
|
||||
{"res://c:\\tests/res\\foo%20bar/strange\\sth", 0, "res://c:\\tests/res\\foo%20bar/strange\\sth"},
|
||||
{"res://c:\\tests/res\\foo%20bar/strange\\sth", URL_FILE_USE_PATHURL, "res://c:\\tests/res\\foo%20bar/strange\\sth"},
|
||||
{"res://c:\\tests/res\\foo%20bar/strange\\sth", URL_UNESCAPE, "res://c:\\tests/res\\foo bar/strange\\sth"},
|
||||
{"/A/../B/./C/../../test_remove_dot_segments", 0, "/test_remove_dot_segments"},
|
||||
{"/A/../B/./C/../../test_remove_dot_segments", URL_FILE_USE_PATHURL, "/test_remove_dot_segments"},
|
||||
{"/A/../B/./C/../../test_remove_dot_segments", URL_WININET_COMPATIBILITY, "/test_remove_dot_segments"},
|
||||
{"/A/B\\C/D\\E", 0, "/A/B\\C/D\\E"},
|
||||
{"/A/B\\C/D\\E", URL_FILE_USE_PATHURL, "/A/B\\C/D\\E"},
|
||||
{"/A/B\\C/D\\E", URL_WININET_COMPATIBILITY, "/A/B\\C/D\\E"},
|
||||
{"///A/../B", 0, "///B"},
|
||||
{"///A/../B", URL_FILE_USE_PATHURL, "///B"},
|
||||
{"///A/../B", URL_WININET_COMPATIBILITY, "///B"},
|
||||
{"A", 0, "A"},
|
||||
{"../A", 0, "../A"},
|
||||
{"A/../B", 0, "B", TRUE},
|
||||
{"/uri-res/N2R?urn:sha1:B3K", URL_DONT_ESCAPE_EXTRA_INFO | URL_WININET_COMPATIBILITY /*0x82000000*/, "/uri-res/N2R?urn:sha1:B3K"} /*LimeWire online installer calls this*/,
|
||||
{"http:www.winehq.org/dir/../index.html", 0, "http:www.winehq.org/index.html"},
|
||||
{"http://localhost/test.html", URL_FILE_USE_PATHURL, "http://localhost/test.html"},
|
||||
{"http://localhost/te%20st.html", URL_FILE_USE_PATHURL, "http://localhost/te%20st.html"},
|
||||
{"http://www.winehq.org/%E6%A1%9C.html", URL_FILE_USE_PATHURL, "http://www.winehq.org/%E6%A1%9C.html"},
|
||||
{"mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"ftp:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "ftp:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"file:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "file:@MSITStore:C:/Program Files/AutoCAD 2008/Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"http:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", 0, "http:@MSITStore:C:/Program Files/AutoCAD 2008/Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"http:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", URL_FILE_USE_PATHURL, "http:@MSITStore:C:/Program Files/AutoCAD 2008/Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
{"mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm", URL_FILE_USE_PATHURL, "mk:@MSITStore:C:\\Program Files/AutoCAD 2008\\Help/acad_acg.chm::/WSfacf1429558a55de1a7524c1004e616f8b-322b.htm"},
|
||||
};
|
||||
|
||||
urllen = lstrlenA(winehqA);
|
||||
|
||||
/* Parameter checks */
|
||||
|
@ -1161,10 +1158,8 @@ static void test_UrlCanonicalizeA(void)
|
|||
ok(hr == S_OK, "hr = %lx\n", hr);
|
||||
|
||||
/* test url-modification */
|
||||
for (i = 0; i < ARRAY_SIZE(TEST_CANONICALIZE); i++) {
|
||||
check_url_canonicalize(i, TEST_CANONICALIZE[i].url, TEST_CANONICALIZE[i].flags,
|
||||
TEST_CANONICALIZE[i].expecturl, TEST_CANONICALIZE[i].todo);
|
||||
}
|
||||
for (i = 0; i < ARRAY_SIZE(tests); i++)
|
||||
check_url_canonicalize(i, tests[i].url, tests[i].flags, tests[i].expect, tests[i].todo);
|
||||
}
|
||||
|
||||
/* ########################### */
|
||||
|
|
Loading…
Add table
Reference in a new issue