Thomas Mullaly : urlmon/tests: Added more CoInternetCombineIUri tests.
Alexandre Julliard
julliard at winehq.org
Wed Nov 3 11:37:05 CDT 2010
Module: wine
Branch: master
Commit: 7c6bb2fbfc289ea8b6166bebc05212999812b6c0
URL: http://source.winehq.org/git/wine.git/?a=commit;h=7c6bb2fbfc289ea8b6166bebc05212999812b6c0
Author: Thomas Mullaly <thomas.mullaly at gmail.com>
Date: Tue Oct 12 20:50:18 2010 -0400
urlmon/tests: Added more CoInternetCombineIUri tests.
---
dlls/urlmon/tests/uri.c | 117 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 117 insertions(+), 0 deletions(-)
diff --git a/dlls/urlmon/tests/uri.c b/dlls/urlmon/tests/uri.c
index bf1ed1c..92fb94f 100644
--- a/dlls/urlmon/tests/uri.c
+++ b/dlls/urlmon/tests/uri.c
@@ -6017,6 +6017,123 @@ static const uri_combine_test uri_combine_tests[] = {
{URL_SCHEME_HTTP,S_OK},
{URLZONE_INVALID,E_NOTIMPL}
}
+ },
+ /* Windows validates the path component from the relative Uri. */
+ { "http://google.com/test",0,
+ "/Te%XXst",Uri_CREATE_ALLOW_RELATIVE,
+ 0,E_INVALIDARG,TRUE
+ },
+ /* Windows doesn't validate the query from the relative Uri. */
+ { "http://google.com/test",0,
+ "?Tes%XXt",Uri_CREATE_ALLOW_RELATIVE,
+ 0,S_OK,TRUE,
+ {
+ {"http://google.com/test?Tes%XXt",S_OK},
+ {"google.com",S_OK},
+ {"http://google.com/test?Tes%XXt",S_OK},
+ {"google.com",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"google.com",S_OK},
+ {"",S_FALSE},
+ {"/test",S_OK},
+ {"/test?Tes%XXt",S_OK},
+ {"?Tes%XXt",S_OK},
+ {"http://google.com/test?Tes%XXt",S_OK},
+ {"http",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE}
+ },
+ {
+ {Uri_HOST_DNS,S_OK},
+ {80,S_OK},
+ {URL_SCHEME_HTTP,S_OK},
+ {URLZONE_INVALID,E_NOTIMPL}
+ }
+ },
+ /* Windows doesn't validate the fragment from the relative Uri. */
+ { "http://google.com/test",0,
+ "#Tes%XXt",Uri_CREATE_ALLOW_RELATIVE,
+ 0,S_OK,TRUE,
+ {
+ {"http://google.com/test#Tes%XXt",S_OK},
+ {"google.com",S_OK},
+ {"http://google.com/test#Tes%XXt",S_OK},
+ {"google.com",S_OK},
+ {"",S_FALSE},
+ {"#Tes%XXt",S_OK},
+ {"google.com",S_OK},
+ {"",S_FALSE},
+ {"/test",S_OK},
+ {"/test",S_OK},
+ {"",S_FALSE},
+ {"http://google.com/test#Tes%XXt",S_OK},
+ {"http",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE}
+ },
+ {
+ {Uri_HOST_DNS,S_OK},
+ {80,S_OK},
+ {URL_SCHEME_HTTP,S_OK},
+ {URLZONE_INVALID,E_NOTIMPL}
+ }
+ },
+ /* Creates an IUri which contains an invalid dos path char. */
+ { "file:///c:/test",0,
+ "/test<ing",Uri_CREATE_ALLOW_RELATIVE,
+ URL_FILE_USE_PATHURL,S_OK,TRUE,
+ {
+ {"file://c:\\test<ing",S_OK},
+ {"",S_FALSE},
+ {"file://c:\\test<ing",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"c:\\test<ing",S_OK},
+ {"c:\\test<ing",S_OK},
+ {"",S_FALSE},
+ {"file://c:\\test<ing",S_OK},
+ {"file",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE}
+ },
+ {
+ {Uri_HOST_UNKNOWN,S_OK},
+ {0,S_FALSE},
+ {URL_SCHEME_FILE,S_OK},
+ {URLZONE_INVALID,E_NOTIMPL}
+ }
+ },
+ /* Appends the path after the drive letter (if any). */
+ { "file:///c:/test",0,
+ "/c:/testing",Uri_CREATE_ALLOW_RELATIVE,
+ 0,S_OK,TRUE,
+ {
+ {"file:///c:/c:/testing",S_OK},
+ {"",S_FALSE},
+ {"file:///c:/c:/testing",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"",S_FALSE},
+ {"/c:/c:/testing",S_OK},
+ {"/c:/c:/testing",S_OK},
+ {"",S_FALSE},
+ {"file:///c:/c:/testing",S_OK},
+ {"file",S_OK},
+ {"",S_FALSE},
+ {"",S_FALSE}
+ },
+ {
+ {Uri_HOST_UNKNOWN,S_OK},
+ {0,S_FALSE},
+ {URL_SCHEME_FILE,S_OK},
+ {URLZONE_INVALID,E_NOTIMPL}
+ }
}
};
More information about the wine-cvs
mailing list