Jacek Caban : wininet/tests: Fixed most tests on IE11.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Sep 3 15:09:21 CDT 2014
Module: wine
Branch: master
Commit: 8e8eef940a2980dc4577ec4d075f1d7e2a57f8b5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=8e8eef940a2980dc4577ec4d075f1d7e2a57f8b5
Author: Jacek Caban <jacek at codeweavers.com>
Date: Tue Sep 2 12:37:37 2014 +0200
wininet/tests: Fixed most tests on IE11.
---
dlls/wininet/tests/http.c | 62 ++++++++++++++++++++++++++++++++++++++---------
1 file changed, 51 insertions(+), 11 deletions(-)
diff --git a/dlls/wininet/tests/http.c b/dlls/wininet/tests/http.c
index a8b55fd..ab09cca 100644
--- a/dlls/wininet/tests/http.c
+++ b/dlls/wininet/tests/http.c
@@ -73,7 +73,7 @@ static BOOL first_connection_to_test_url = TRUE;
status < MAX_INTERNET_STATUS && status_string[status] ? \
status_string[status] : "unknown"); \
if (expect[status]) expect[status]--; \
- else optional[status]--; \
+ else if(optional[status]) optional[status]--; \
} \
notified[status]++; \
}while(0)
@@ -728,8 +728,16 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
{
if (flags & INTERNET_FLAG_ASYNC)
SET_EXPECT(INTERNET_STATUS_REQUEST_COMPLETE);
+
+ /* IE11 calls those in InternetQueryDataAvailable call. */
+ SET_OPTIONAL(INTERNET_STATUS_RECEIVING_RESPONSE);
+ SET_OPTIONAL(INTERNET_STATUS_RESPONSE_RECEIVED);
+
length = 0;
res = InternetQueryDataAvailable(hor,&length,0x0,0x0);
+
+ CLEAR_NOTIFIED(INTERNET_STATUS_RECEIVING_RESPONSE);
+
if (flags & INTERNET_FLAG_ASYNC)
{
if (res)
@@ -750,6 +758,7 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
exlen = length;
ok(exlen, "length = 0\n");
CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_COMPLETE);
+ CLEAR_NOTIFIED(INTERNET_STATUS_RESPONSE_RECEIVED);
ok(req_error, "req_error = 0\n");
continue;
}else {
@@ -758,6 +767,8 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
}else {
ok(res, "InternetQueryDataAvailable failed: %u\n", GetLastError());
}
+ CLEAR_NOTIFIED(INTERNET_STATUS_RESPONSE_RECEIVED);
+
trace("LENGTH %d\n", length);
if(test->flags & TESTF_CHUNKED)
ok(length <= 8192, "length = %d, expected <= 8192\n", length);
@@ -3232,17 +3243,24 @@ static void test_conn_close(int port)
res = InternetReadFile(req, buf, avail, &size);
ok(res, "InternetReadFile failed: %u\n", GetLastError());
+ /* IE11 calls those in InternetQueryDataAvailable call. */
+ SET_OPTIONAL(INTERNET_STATUS_RECEIVING_RESPONSE);
+ SET_OPTIONAL(INTERNET_STATUS_RESPONSE_RECEIVED);
+
res = InternetQueryDataAvailable(req, &avail, 0, 0);
ok(!res && (GetLastError() == ERROR_IO_PENDING),
"Asynchronous HttpSendRequest NOT returning 0 with error ERROR_IO_PENDING\n");
ok(!avail, "avail = %u, expected 0\n", avail);
+ CLEAR_NOTIFIED(INTERNET_STATUS_RECEIVING_RESPONSE);
+
SET_EXPECT(INTERNET_STATUS_CLOSING_CONNECTION);
SET_EXPECT(INTERNET_STATUS_CONNECTION_CLOSED);
SET_EXPECT(INTERNET_STATUS_REQUEST_COMPLETE);
SetEvent(conn_close_event);
WaitForSingleObject(hCompleteEvent, INFINITE);
ok(req_error == ERROR_SUCCESS, "req_error = %u\n", req_error);
+ CLEAR_NOTIFIED(INTERNET_STATUS_RESPONSE_RECEIVED);
CHECK_NOTIFIED(INTERNET_STATUS_CLOSING_CONNECTION);
CHECK_NOTIFIED(INTERNET_STATUS_CONNECTION_CLOSED);
CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_COMPLETE);
@@ -4323,6 +4341,10 @@ static void test_security_flags(void)
SET_EXPECT(INTERNET_STATUS_NAME_RESOLVED);
SET_EXPECT(INTERNET_STATUS_CONNECTING_TO_SERVER);
SET_EXPECT(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ SET_OPTIONAL(INTERNET_STATUS_CLOSING_CONNECTION); /* IE11 calls it, it probably reconnects. */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTION_CLOSED); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTING_TO_SERVER); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTED_TO_SERVER); /* IE11 */
SET_EXPECT(INTERNET_STATUS_SENDING_REQUEST);
SET_EXPECT(INTERNET_STATUS_REQUEST_SENT);
SET_EXPECT(INTERNET_STATUS_RECEIVING_RESPONSE);
@@ -4339,8 +4361,10 @@ static void test_security_flags(void)
CHECK_NOTIFIED(INTERNET_STATUS_RESOLVING_NAME);
CHECK_NOTIFIED(INTERNET_STATUS_NAME_RESOLVED);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTING_TO_SERVER);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTING_TO_SERVER, 2);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTED_TO_SERVER, 2);
+ CHECK_NOTIFIED(INTERNET_STATUS_CLOSING_CONNECTION);
+ CHECK_NOTIFIED(INTERNET_STATUS_CONNECTION_CLOSED);
CHECK_NOTIFIED(INTERNET_STATUS_SENDING_REQUEST);
CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_SENT);
CHECK_NOTIFIED(INTERNET_STATUS_RECEIVING_RESPONSE);
@@ -4374,6 +4398,10 @@ static void test_security_flags(void)
SET_EXPECT(INTERNET_STATUS_CONNECTING_TO_SERVER);
SET_EXPECT(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ SET_OPTIONAL(INTERNET_STATUS_CLOSING_CONNECTION); /* IE11 calls it, it probably reconnects. */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTION_CLOSED); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTING_TO_SERVER); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTED_TO_SERVER); /* IE11 */
SET_EXPECT(INTERNET_STATUS_CLOSING_CONNECTION);
SET_EXPECT(INTERNET_STATUS_CONNECTION_CLOSED);
SET_EXPECT(INTERNET_STATUS_REQUEST_COMPLETE);
@@ -4411,10 +4439,10 @@ static void test_security_flags(void)
}
HeapFree(GetProcessHeap(), 0, cert);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTING_TO_SERVER);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTED_TO_SERVER);
- CHECK_NOTIFIED(INTERNET_STATUS_CLOSING_CONNECTION);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTION_CLOSED);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTING_TO_SERVER, 2);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTED_TO_SERVER, 2);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CLOSING_CONNECTION, 2);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTION_CLOSED, 2);
CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_COMPLETE);
CLEAR_NOTIFIED(INTERNET_STATUS_COOKIE_SENT);
CLEAR_NOTIFIED(INTERNET_STATUS_DETECTING_PROXY);
@@ -4470,6 +4498,10 @@ static void test_security_flags(void)
SET_EXPECT(INTERNET_STATUS_CONNECTING_TO_SERVER);
SET_EXPECT(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ SET_OPTIONAL(INTERNET_STATUS_CLOSING_CONNECTION); /* IE11 calls it, it probably reconnects. */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTION_CLOSED); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTING_TO_SERVER); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTED_TO_SERVER); /* IE11 */
SET_EXPECT(INTERNET_STATUS_SENDING_REQUEST);
SET_EXPECT(INTERNET_STATUS_REQUEST_SENT);
SET_EXPECT(INTERNET_STATUS_RECEIVING_RESPONSE);
@@ -4484,8 +4516,10 @@ static void test_security_flags(void)
WaitForSingleObject(hCompleteEvent, INFINITE);
ok(req_error == ERROR_SUCCESS, "req_error = %d\n", req_error);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTING_TO_SERVER);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTING_TO_SERVER, 2);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTED_TO_SERVER, 2);
+ CHECK_NOTIFIED(INTERNET_STATUS_CLOSING_CONNECTION);
+ CHECK_NOTIFIED(INTERNET_STATUS_CONNECTION_CLOSED);
CHECK_NOTIFIED(INTERNET_STATUS_SENDING_REQUEST);
CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_SENT);
CHECK_NOTIFIED(INTERNET_STATUS_RECEIVING_RESPONSE);
@@ -4537,6 +4571,10 @@ static void test_security_flags(void)
SET_EXPECT(INTERNET_STATUS_CONNECTING_TO_SERVER);
SET_EXPECT(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ SET_OPTIONAL(INTERNET_STATUS_CLOSING_CONNECTION); /* IE11 calls it, it probably reconnects. */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTION_CLOSED); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTING_TO_SERVER); /* IE11 */
+ SET_OPTIONAL(INTERNET_STATUS_CONNECTED_TO_SERVER); /* IE11 */
SET_EXPECT(INTERNET_STATUS_SENDING_REQUEST);
SET_EXPECT(INTERNET_STATUS_REQUEST_SENT);
SET_EXPECT(INTERNET_STATUS_RECEIVING_RESPONSE);
@@ -4550,8 +4588,10 @@ static void test_security_flags(void)
WaitForSingleObject(hCompleteEvent, INFINITE);
ok(req_error == ERROR_SUCCESS, "req_error = %d\n", req_error);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTING_TO_SERVER);
- CHECK_NOTIFIED(INTERNET_STATUS_CONNECTED_TO_SERVER);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTING_TO_SERVER, 2);
+ CHECK_NOTIFIED2(INTERNET_STATUS_CONNECTED_TO_SERVER, 2);
+ CHECK_NOTIFIED(INTERNET_STATUS_CLOSING_CONNECTION);
+ CHECK_NOTIFIED(INTERNET_STATUS_CONNECTION_CLOSED);
CHECK_NOTIFIED(INTERNET_STATUS_SENDING_REQUEST);
CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_SENT);
CHECK_NOTIFIED(INTERNET_STATUS_RECEIVING_RESPONSE);
More information about the wine-cvs
mailing list