Signed-off-by: Michael Stefaniuc mstefani@winehq.org --- dlls/mshtml/tests/xmlhttprequest.c | 77 +++++++++++++----------------- 1 file changed, 33 insertions(+), 44 deletions(-)
diff --git a/dlls/mshtml/tests/xmlhttprequest.c b/dlls/mshtml/tests/xmlhttprequest.c index 63df66ebe0..9280246b3c 100644 --- a/dlls/mshtml/tests/xmlhttprequest.c +++ b/dlls/mshtml/tests/xmlhttprequest.c @@ -28,18 +28,6 @@ #include "objsafe.h" #include "wine/test.h"
-static BSTR a2bstr(const char *str) -{ - BSTR ret; - int len; - - len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0); - ret = SysAllocStringLen(NULL, len); - MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len); - - return ret; -} - #define DEFINE_EXPECT(func) \ static BOOL expect_ ## func = FALSE, called_ ## func = FALSE
@@ -374,7 +362,7 @@ static void pump_msgs(BOOL *b)
struct HEADER_TYPE { - const char *key; + const WCHAR *key; const WCHAR *value; };
@@ -428,16 +416,17 @@ static void test_header(const struct HEADER_TYPE expect[], int num)
for(i = 0; i < num; ++i) { text = NULL; - key = a2bstr(expect[i].key); + key = SysAllocString(expect[i].key); hres = IHTMLXMLHttpRequest_getResponseHeader(xhr, key, &text); ok(hres == S_OK, "getResponseHeader failed, got %08x\n", hres); ok(text != NULL, "text == NULL\n"); ok(!lstrcmpW(text, expect[i].value), - "Expect %s: %s, got %s\n", expect[i].key, wine_dbgstr_w(expect[i].value), wine_dbgstr_w(text)); + "Expect %s: %s, got %s\n", wine_dbgstr_w(expect[i].key), wine_dbgstr_w(expect[i].value), + wine_dbgstr_w(text)); SysFreeString(key); SysFreeString(text);
- wsprintfW(buf, L"%S: %s", expect[i].key, expect[i].value); + wsprintfW(buf, L"%s: %s", expect[i].key, expect[i].value); ok(wcsstr(all, buf) != NULL, "AllResponseHeaders(%s) don't have expected substr(%s)\n", wine_dbgstr_w(all), wine_dbgstr_w(buf)); } @@ -485,9 +474,9 @@ static void test_illegal_xml(IXMLDOMDocument *xmldom) }
#define set_request_header(a,b,c) _set_request_header(__LINE__,a,b,c) -static void _set_request_header(unsigned line, IHTMLXMLHttpRequest *xhr, const char *header_a, const char *value_a) +static void _set_request_header(unsigned line, IHTMLXMLHttpRequest *xhr, const WCHAR *header_w, const WCHAR *value_w) { - BSTR header = a2bstr(header_a), value = a2bstr(value_a); + BSTR header = SysAllocString(header_w), value = SysAllocString(value_w); HRESULT hres;
hres = IHTMLXMLHttpRequest_setRequestHeader(xhr, header, value); @@ -534,10 +523,10 @@ static void test_responseXML(const WCHAR *expect_text) }
#define xhr_open(a,b) _xhr_open(__LINE__,a,b) -static HRESULT _xhr_open(unsigned line, const char *url_a, const char *method_a) +static HRESULT _xhr_open(unsigned line, const WCHAR *url_w, const WCHAR *method_w) { - BSTR method = a2bstr(method_a); - BSTR url = a2bstr(url_a); + BSTR method = SysAllocString(method_w); + BSTR url = SysAllocString(url_w); VARIANT async, empty; HRESULT hres;
@@ -574,7 +563,7 @@ static void _test_response_text(unsigned line, const WCHAR *expect_text) SysFreeString(text); }
-static void test_sync_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR *expect_text) +static void test_sync_xhr(IHTMLDocument2 *doc, const WCHAR *xml_url, const WCHAR *expect_text) { VARIANT vbool, vempty, var; BSTR method, url; @@ -582,8 +571,8 @@ static void test_sync_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR LONG val; HRESULT hres; static const struct HEADER_TYPE expect_headers[] = { - {"Content-Length", L"51"}, - {"Content-Type", L"application/xml"} + {L"Content-Length", L"51"}, + {L"Content-Type", L"application/xml"} };
trace("test_sync_xhr\n"); @@ -641,8 +630,8 @@ static void test_sync_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR ok(hres == E_FAIL, "got %08x\n", hres); ok(text == NULL, "text = %p\n", text);
- method = a2bstr("GET"); - url = a2bstr(xml_url); + method = SysAllocString(L"GET"); + url = SysAllocString(xml_url); V_VT(&vbool) = VT_BOOL; V_BOOL(&vbool) = VARIANT_FALSE; V_VT(&vempty) = VT_EMPTY; @@ -685,7 +674,7 @@ static void test_sync_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR ok(hres == S_OK, "get_readyState failed: %08x\n", hres); ok(val == 1, "Expect OPENED, got %d\n", val);
- set_request_header(xhr, "x-wine-test", "sync-test"); + set_request_header(xhr, L"x-wine-test", L"sync-test");
SET_EXPECT(xmlhttprequest_onreadystatechange_opened); SET_EXPECT(xmlhttprequest_onreadystatechange_headers_received); @@ -733,15 +722,15 @@ static void test_sync_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR xhr = NULL; }
-static void test_async_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR *expect_text) +static void test_async_xhr(IHTMLDocument2 *doc, const WCHAR *xml_url, const WCHAR *expect_text) { VARIANT var, vempty; BSTR text; LONG val; HRESULT hres; static const struct HEADER_TYPE expect_headers[] = { - {"Content-Length", L"51"}, - {"Content-Type", L"application/xml"} + {L"Content-Length", L"51"}, + {L"Content-Type", L"application/xml"} };
create_xmlhttprequest(doc); @@ -798,7 +787,7 @@ static void test_async_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR ok(val == 0, "Expect UNSENT, got %d\n", val);
SET_EXPECT(xmlhttprequest_onreadystatechange_opened); - hres = xhr_open(xml_url, "GET"); + hres = xhr_open(xml_url, L"GET"); CHECK_CALLED(xmlhttprequest_onreadystatechange_opened);
if(FAILED(hres)) { @@ -831,7 +820,7 @@ static void test_async_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR ok(hres == S_OK, "get_readyState failed: %08x\n", hres); ok(val == 1, "Expect OPENED, got %d\n", val);
- set_request_header(xhr, "x-wine-test", "async-test"); + set_request_header(xhr, L"x-wine-test", L"async-test");
SET_EXPECT(xmlhttprequest_onreadystatechange_opened); SET_EXPECT(xmlhttprequest_onreadystatechange_headers_received); @@ -891,7 +880,7 @@ static void test_async_xhr(IHTMLDocument2 *doc, const char *xml_url, const WCHAR xhr = NULL; }
-static void test_async_xhr_abort(IHTMLDocument2 *doc, const char *xml_url) +static void test_async_xhr_abort(IHTMLDocument2 *doc, const WCHAR *xml_url) { VARIANT vempty, var; LONG val; @@ -909,7 +898,7 @@ static void test_async_xhr_abort(IHTMLDocument2 *doc, const char *xml_url) hres = IHTMLXMLHttpRequest_put_onreadystatechange(xhr, var);
SET_EXPECT(xmlhttprequest_onreadystatechange_opened); - xhr_open(xml_url, "GET"); + xhr_open(xml_url, L"GET"); CHECK_CALLED(xmlhttprequest_onreadystatechange_opened);
hres = IHTMLXMLHttpRequest_abort(xhr); @@ -933,7 +922,7 @@ static void test_async_xhr_abort(IHTMLDocument2 *doc, const char *xml_url) hres = IHTMLXMLHttpRequest_put_onreadystatechange(xhr, var);
SET_EXPECT(xmlhttprequest_onreadystatechange_opened); - xhr_open(xml_url, "GET"); + xhr_open(xml_url, L"GET"); CHECK_CALLED(xmlhttprequest_onreadystatechange_opened);
loading_cnt = 0; @@ -980,13 +969,13 @@ static void test_xhr_post(IHTMLDocument2 *doc) ok(hres == S_OK, "put_onreadystatechange failed: %08x\n", hres);
SET_EXPECT(xmlhttprequest_onreadystatechange_opened); - xhr_open("http://test.winehq.org/tests/post.php", "POST"); + xhr_open(L"http://test.winehq.org/tests/post.php", L"POST"); CHECK_CALLED(xmlhttprequest_onreadystatechange_opened);
- set_request_header(xhr, "Content-Type", "application/x-www-form-urlencoded"); + set_request_header(xhr, L"Content-Type", L"application/x-www-form-urlencoded");
V_VT(&v) = VT_BSTR; - V_BSTR(&v) = a2bstr("X=Testing"); + V_BSTR(&v) = SysAllocString(L"X=Testing");
loading_cnt = 0; SET_EXPECT(xmlhttprequest_onreadystatechange_opened); @@ -1013,7 +1002,7 @@ static void test_xhr_post(IHTMLDocument2 *doc) xhr = NULL; }
-static IHTMLDocument2 *create_doc_from_url(const char *start_url) +static IHTMLDocument2 *create_doc_from_url(const WCHAR *start_url) { BSTR url; IBindCtx *bc; @@ -1025,7 +1014,7 @@ static IHTMLDocument2 *create_doc_from_url(const char *start_url) hres = CreateBindCtx(0, &bc); ok(hres == S_OK, "CreateBindCtx failed: 0x%08x\n", hres);
- url = a2bstr(start_url); + url = SysAllocString(start_url); hres = CreateURLMoniker(NULL, url, &url_mon); ok(hres == S_OK, "CreateURLMoniker failed: 0x%08x\n", hres);
@@ -1058,14 +1047,14 @@ static IHTMLDocument2 *create_doc_from_url(const char *start_url) START_TEST(xmlhttprequest) { IHTMLDocument2 *doc; - static const char start_url[] = "http://test.winehq.org/tests/hello.html"; - static const char xml_url[] = "http://test.winehq.org/tests/xmltest.xml"; - static const char large_page_url[] = "http://test.winehq.org/tests/data.php"; + static const WCHAR start_url[] = L"http://test.winehq.org/tests/hello.html"; + static const WCHAR xml_url[] = L"http://test.winehq.org/tests/xmltest.xml"; + static const WCHAR large_page_url[] = L"http://test.winehq.org/tests/data.php"; static const WCHAR expect_response_text[] = L"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<a>TEST</a>";
CoInitialize(NULL);
- content_type = a2bstr("Content-Type"); + content_type = SysAllocString(L"Content-Type"); doc = create_doc_from_url(start_url); if(doc) { test_sync_xhr(doc, xml_url, expect_response_text);