From: Nikolay Sivov nsivov@codeweavers.com
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/winhttp/tests/winhttp.c | 60 ++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+)
diff --git a/dlls/winhttp/tests/winhttp.c b/dlls/winhttp/tests/winhttp.c index 2252551f32c..08fedfdb823 100644 --- a/dlls/winhttp/tests/winhttp.c +++ b/dlls/winhttp/tests/winhttp.c @@ -4369,12 +4369,28 @@ static void test_credentials(void) ok(!buffer[0], "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(!size, "expected 0, got %lu\n", size);
+ size = 4; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_PROXY_USERNAME, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + todo_wine + ok(size == 2, "Unexpected size %lu\n", size); + size = ARRAY_SIZE(buffer); ret = WinHttpQueryOption(req, WINHTTP_OPTION_PROXY_PASSWORD, &buffer, &size); ok(ret, "failed to query proxy password %lu\n", GetLastError()); ok(!buffer[0], "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(!size, "expected 0, got %lu\n", size);
+ size = 4; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_PROXY_PASSWORD, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + todo_wine + ok(size == 2, "Unexpected size %lu\n", size); + ret = WinHttpSetOption(req, WINHTTP_OPTION_PROXY_USERNAME, proxy_userW, lstrlenW(proxy_userW)); ok(ret, "failed to set username %lu\n", GetLastError());
@@ -4384,18 +4400,41 @@ static void test_credentials(void) ok(!wcscmp(buffer, proxy_userW), "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(size == lstrlenW(proxy_userW) * sizeof(WCHAR), "unexpected result %lu\n", size);
+ size = 0; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_PROXY_USERNAME, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + ok(size == lstrlenW(proxy_userW) * sizeof(WCHAR), "Unexpected size %lu\n", size); + size = ARRAY_SIZE(buffer); ret = WinHttpQueryOption(req, WINHTTP_OPTION_USERNAME, &buffer, &size); ok(ret, "failed to query username %lu\n", GetLastError()); ok(!buffer[0], "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(!size, "expected 0, got %lu\n", size);
+ size = 4; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_USERNAME, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + todo_wine + ok(size == 2, "Unexpected size %lu\n", size); + size = ARRAY_SIZE(buffer); ret = WinHttpQueryOption(req, WINHTTP_OPTION_PASSWORD, &buffer, &size); ok(ret, "failed to query password %lu\n", GetLastError()); ok(!buffer[0], "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(!size, "expected 0, got %lu\n", size);
+ size = 4; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_PASSWORD, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + todo_wine + ok(size == 2, "Unexpected size %lu\n", size); + ret = WinHttpSetOption(req, WINHTTP_OPTION_PROXY_PASSWORD, proxy_passW, lstrlenW(proxy_passW)); ok(ret, "failed to set proxy password %lu\n", GetLastError());
@@ -4405,6 +4444,13 @@ static void test_credentials(void) ok(!wcscmp(buffer, proxy_passW), "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(size == lstrlenW(proxy_passW) * sizeof(WCHAR), "unexpected result %lu\n", size);
+ size = 0; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_PROXY_PASSWORD, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + ok(size == lstrlenW(proxy_passW) * sizeof(WCHAR), "Unexpected size %lu\n", size); + ret = WinHttpSetOption(req, WINHTTP_OPTION_USERNAME, userW, lstrlenW(userW)); ok(ret, "failed to set username %lu\n", GetLastError());
@@ -4414,6 +4460,13 @@ static void test_credentials(void) ok(!wcscmp(buffer, userW), "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(size == lstrlenW(userW) * sizeof(WCHAR), "unexpected result %lu\n", size);
+ size = 0; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_USERNAME, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + ok(size == lstrlenW(userW) * sizeof(WCHAR), "Unexpected size %lu\n", size); + ret = WinHttpSetOption(req, WINHTTP_OPTION_PASSWORD, passW, lstrlenW(passW)); ok(ret, "failed to set password %lu\n", GetLastError());
@@ -4423,6 +4476,13 @@ static void test_credentials(void) ok(!wcscmp(buffer, passW), "unexpected result %s\n", wine_dbgstr_w(buffer)); ok(size == lstrlenW(passW) * sizeof(WCHAR), "unexpected result %lu\n", size);
+ size = 0; + SetLastError(0xdeadbeef); + ret = WinHttpQueryOption(req, WINHTTP_OPTION_PASSWORD, NULL, &size); + todo_wine + ok(!ret && GetLastError() == ERROR_INSUFFICIENT_BUFFER, "Unexpected error %lu\n", GetLastError()); + ok(size == lstrlenW(passW) * sizeof(WCHAR), "Unexpected size %lu\n", size); + WinHttpCloseHandle(req);
req = WinHttpOpenRequest(con, NULL, NULL, NULL, NULL, NULL, 0);
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=146875
Your paranoid android.
=== w7u_2qxl (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w7u_adm (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w7u_el (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w8 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w8adm (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w864 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064v1507 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064v1809 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064_tsign (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w10pro64 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w10pro64_en_AE_u8 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w11pro64 (32 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w7pro64 (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w864 (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064v1507 (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064v1809 (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064_2qxl (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064_adm (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w1064_tsign (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w10pro64 (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w10pro64_ar (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w10pro64_ja (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w10pro64_zh_CN (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10
=== w11pro64_amd (64 bit report) ===
winhttp: winhttp.c:4408: Test failed: Unexpected size 20 winhttp.c:4452: Test failed: Unexpected size 20 winhttp.c:4468: Test failed: Unexpected size 10 winhttp.c:4484: Test failed: Unexpected size 10