Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
17d683b0
Commit
17d683b0
authored
May 24, 2012
by
Jacek Caban
Committed by
Alexandre Julliard
May 24, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wininet: Added INTERNET_OPTION_REQUEST_FLAGS tests.
parent
27af8197
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
47 additions
and
10 deletions
+47
-10
http.c
dlls/wininet/tests/http.c
+47
-10
No files found.
dlls/wininet/tests/http.c
View file @
17d683b0
...
...
@@ -220,6 +220,26 @@ static void _test_status_code(unsigned line, HINTERNET req, DWORD excode)
"[invalid 2] HttpQueryInfo failed: %x(%d)
\n
"
,
res
,
GetLastError
());
}
#define test_request_flags(a,b) _test_request_flags(__LINE__,a,b,FALSE)
#define test_request_flags_todo(a,b) _test_request_flags(__LINE__,a,b,TRUE)
static
void
_test_request_flags
(
unsigned
line
,
HINTERNET
req
,
DWORD
exflags
,
BOOL
is_todo
)
{
DWORD
flags
,
size
;
BOOL
res
;
flags
=
0xdeadbeef
;
size
=
sizeof
(
flags
);
res
=
InternetQueryOptionW
(
req
,
INTERNET_OPTION_REQUEST_FLAGS
,
&
flags
,
&
size
);
ok_
(
__FILE__
,
line
)(
res
,
"InternetQueryOptionW(INTERNET_OPTION_REQUEST_FLAGS) failed: %u
\n
"
,
GetLastError
());
/* FIXME: Remove once we have INTERNET_REQFLAG_CACHE_WRITE_DISABLED implementation */
flags
&=
~
INTERNET_REQFLAG_CACHE_WRITE_DISABLED
;
if
(
!
is_todo
)
ok_
(
__FILE__
,
line
)(
flags
==
exflags
,
"flags = %x, expected %x
\n
"
,
flags
,
exflags
);
else
todo_wine
ok_
(
__FILE__
,
line
)(
flags
==
exflags
,
"flags = %x, expected %x
\n
"
,
flags
,
exflags
);
}
static
int
close_handle_cnt
;
static
VOID
WINAPI
callback
(
...
...
@@ -377,7 +397,6 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
BOOL
res
,
on_async
=
TRUE
;
CHAR
buffer
[
4000
];
DWORD
length
,
post_len
=
0
;
DWORD
out
;
const
char
*
types
[
2
]
=
{
"*"
,
NULL
};
HINTERNET
hi
,
hic
=
0
,
hor
=
0
;
...
...
@@ -410,7 +429,7 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
trace
(
"HttpOpenRequestA <--
\n
"
);
hor
=
HttpOpenRequestA
(
hic
,
test
->
post_data
?
"POST"
:
"GET"
,
test
->
path
,
NULL
,
NULL
,
types
,
INTERNET_FLAG_KEEP_CONNECTION
|
INTERNET_FLAG_RE
SYNCHRONIZE
,
INTERNET_FLAG_KEEP_CONNECTION
|
INTERNET_FLAG_RE
LOAD
,
0xdeadbead
);
if
(
hor
==
0x0
&&
GetLastError
()
==
ERROR_INTERNET_NAME_NOT_RESOLVED
)
{
/*
...
...
@@ -426,6 +445,8 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
if
(
hor
==
0x0
)
goto
abort
;
test_request_flags
(
hor
,
INTERNET_REQFLAG_NO_HEADERS
);
length
=
sizeof
(
buffer
);
res
=
InternetQueryOptionA
(
hor
,
INTERNET_OPTION_URL
,
buffer
,
&
length
);
ok
(
res
,
"InternetQueryOptionA(INTERNET_OPTION_URL) failed: %u
\n
"
,
GetLastError
());
...
...
@@ -529,9 +550,7 @@ static void InternetReadFile_test(int flags, const test_data_t *test)
CLEAR_NOTIFIED
(
INTERNET_STATUS_CONNECTING_TO_SERVER
);
CLEAR_NOTIFIED
(
INTERNET_STATUS_CONNECTED_TO_SERVER
);
length
=
4
;
res
=
InternetQueryOptionA
(
hor
,
INTERNET_OPTION_REQUEST_FLAGS
,
&
out
,
&
length
);
ok
(
res
,
"InternetQueryOptionA(INTERNET_OPTION_REQUEST) failed with error %d
\n
"
,
GetLastError
());
test_request_flags
(
hor
,
0
);
length
=
100
;
res
=
InternetQueryOptionA
(
hor
,
INTERNET_OPTION_URL
,
buffer
,
&
length
);
...
...
@@ -662,7 +681,7 @@ static void InternetReadFile_chunked_test(void)
trace
(
"HttpOpenRequestA <--
\n
"
);
hor
=
HttpOpenRequestA
(
hic
,
"GET"
,
"/tests/chunked"
,
NULL
,
NULL
,
types
,
INTERNET_FLAG_KEEP_CONNECTION
|
INTERNET_FLAG_RE
SYNCHRONIZE
,
INTERNET_FLAG_KEEP_CONNECTION
|
INTERNET_FLAG_RE
LOAD
,
0xdeadbead
);
if
(
hor
==
0x0
&&
GetLastError
()
==
ERROR_INTERNET_NAME_NOT_RESOLVED
)
{
/*
...
...
@@ -685,6 +704,8 @@ static void InternetReadFile_chunked_test(void)
"Synchronous HttpSendRequest returning 0, error %u
\n
"
,
GetLastError
());
trace
(
"HttpSendRequestA <--
\n
"
);
test_request_flags
(
hor
,
0
);
length
=
100
;
res
=
HttpQueryInfoA
(
hor
,
HTTP_QUERY_CONTENT_TYPE
,
buffer
,
&
length
,
0x0
);
buffer
[
length
]
=
0
;
...
...
@@ -781,7 +802,7 @@ static void InternetReadFileExA_test(int flags)
trace
(
"HttpOpenRequestA <--
\n
"
);
hor
=
HttpOpenRequestA
(
hic
,
"GET"
,
"/tests/redirect"
,
NULL
,
NULL
,
types
,
INTERNET_FLAG_KEEP_CONNECTION
|
INTERNET_FLAG_RE
SYNCHRONIZE
,
INTERNET_FLAG_KEEP_CONNECTION
|
INTERNET_FLAG_RE
LOAD
,
0xdeadbead
);
if
(
hor
==
0x0
&&
GetLastError
()
==
ERROR_INTERNET_NAME_NOT_RESOLVED
)
{
/*
...
...
@@ -878,6 +899,8 @@ static void InternetReadFileExA_test(int flags)
rc
?
"TRUE"
:
"FALSE"
,
GetLastError
());
HeapFree
(
GetProcessHeap
(),
0
,
inetbuffers
.
lpvBuffer
);
test_request_flags
(
hor
,
0
);
/* tests to see whether lpcszHeader is used - it isn't */
inetbuffers
.
dwStructSize
=
sizeof
(
INTERNET_BUFFERS
);
inetbuffers
.
lpcszHeader
=
(
LPCTSTR
)
0xdeadbeef
;
...
...
@@ -1039,6 +1062,7 @@ static void HttpSendRequestEx_test(void)
}
ok
(
hRequest
!=
NULL
,
"Failed to open request handle err %u
\n
"
,
GetLastError
());
test_request_flags
(
hRequest
,
INTERNET_REQFLAG_NO_HEADERS
);
BufferIn
.
dwStructSize
=
sizeof
(
INTERNET_BUFFERS
);
BufferIn
.
Next
=
(
LPINTERNET_BUFFERS
)
0xdeadcab
;
...
...
@@ -1057,12 +1081,18 @@ static void HttpSendRequestEx_test(void)
ok
(
ret
,
"HttpSendRequestEx Failed with error %u
\n
"
,
error
);
ok
(
error
==
ERROR_SUCCESS
,
"expected ERROR_SUCCESS, got %u
\n
"
,
error
);
test_request_flags
(
hRequest
,
INTERNET_REQFLAG_NO_HEADERS
);
for
(
i
=
3
;
szPostData
[
i
];
i
++
)
ok
(
InternetWriteFile
(
hRequest
,
&
szPostData
[
i
],
1
,
&
dwBytesWritten
),
"InternetWriteFile failed
\n
"
);
test_request_flags
(
hRequest
,
INTERNET_REQFLAG_NO_HEADERS
);
ok
(
HttpEndRequest
(
hRequest
,
NULL
,
0
,
0
),
"HttpEndRequest Failed
\n
"
);
test_request_flags
(
hRequest
,
0
);
ok
(
InternetReadFile
(
hRequest
,
szBuffer
,
255
,
&
dwBytesRead
),
"Unable to read response
\n
"
);
szBuffer
[
dwBytesRead
]
=
0
;
...
...
@@ -1918,6 +1948,7 @@ static void test_proxy_indirect(int port)
ok
(
!
strcmp
(
buffer
,
"Basic realm=
\"
placebo
\"
"
),
"proxy auth info wrong
\n
"
);
test_status_code
(
hr
,
407
);
test_request_flags
(
hr
,
0
);
sz
=
sizeof
buffer
;
r
=
HttpQueryInfo
(
hr
,
HTTP_QUERY_STATUS_TEXT
,
buffer
,
&
sz
,
NULL
);
...
...
@@ -2019,6 +2050,7 @@ static void test_header_handling_order(int port)
ok
(
ret
,
"HttpSendRequest failed
\n
"
);
test_status_code
(
request
,
200
);
test_request_flags
(
request
,
0
);
InternetCloseHandle
(
request
);
...
...
@@ -2378,6 +2410,7 @@ static void test_basic_authentication(int port)
ok
(
ret
,
"HttpSendRequest failed %u
\n
"
,
GetLastError
());
test_status_code
(
request
,
200
);
test_request_flags
(
request
,
0
);
InternetCloseHandle
(
request
);
InternetCloseHandle
(
connect
);
...
...
@@ -2404,6 +2437,7 @@ static void test_invalid_response_headers(int port)
ok
(
ret
,
"HttpSendRequest failed %u
\n
"
,
GetLastError
());
test_status_code
(
request
,
401
);
test_request_flags
(
request
,
0
);
buffer
[
0
]
=
0
;
size
=
sizeof
(
buffer
);
...
...
@@ -2441,10 +2475,14 @@ static void test_response_without_headers(int port)
hr
=
HttpOpenRequest
(
hc
,
NULL
,
"/testG"
,
NULL
,
NULL
,
NULL
,
0
,
0
);
ok
(
hr
!=
NULL
,
"HttpOpenRequest failed %u
\n
"
,
GetLastError
());
test_request_flags
(
hr
,
INTERNET_REQFLAG_NO_HEADERS
);
SetLastError
(
0xdeadbeef
);
r
=
HttpSendRequest
(
hr
,
NULL
,
0
,
NULL
,
0
);
ok
(
r
,
"HttpSendRequest failed %u
\n
"
,
GetLastError
());
test_request_flags_todo
(
hr
,
INTERNET_REQFLAG_NO_HEADERS
);
count
=
0
;
memset
(
buffer
,
0
,
sizeof
buffer
);
SetLastError
(
0xdeadbeef
);
...
...
@@ -2454,6 +2492,7 @@ static void test_response_without_headers(int port)
todo_wine
ok
(
!
memcmp
(
buffer
,
page1
,
sizeof
page1
),
"http data wrong
\n
"
);
test_status_code
(
hr
,
200
);
test_request_flags_todo
(
hr
,
INTERNET_REQFLAG_NO_HEADERS
);
buffer
[
0
]
=
0
;
size
=
sizeof
(
buffer
);
...
...
@@ -3535,9 +3574,7 @@ static void test_InternetCloseHandle(void)
ok
(
!
res
&&
(
GetLastError
()
==
ERROR_IO_PENDING
),
"Asynchronous HttpSendRequest NOT returning 0 with error ERROR_IO_PENDING
\n
"
);
len
=
sizeof
(
flags
);
res
=
InternetQueryOptionA
(
closetest_req
,
INTERNET_OPTION_REQUEST_FLAGS
,
&
flags
,
&
len
);
ok
(
res
,
"InternetQueryOptionA(%p INTERNET_OPTION_URL) failed: %u
\n
"
,
closetest_req
,
GetLastError
());
test_request_flags
(
closetest_req
,
INTERNET_REQFLAG_NO_HEADERS
);
res
=
InternetCloseHandle
(
closetest_session
);
ok
(
res
,
"InternetCloseHandle failed: %u
\n
"
,
GetLastError
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment