Sebastian Lackner : urlmon/tests: Add test for opening cache file with DELETE access.
Alexandre Julliard
julliard at winehq.org
Thu Dec 27 16:01:03 CST 2018
Module: wine
Branch: master
Commit: 9c19b2e225ad5f10bd83e79dbc2eb630add35528
URL: https://source.winehq.org/git/wine.git/?a=commit;h=9c19b2e225ad5f10bd83e79dbc2eb630add35528
Author: Sebastian Lackner <sebastian at fds-team.de>
Date: Wed Dec 26 13:43:02 2018 -0600
urlmon/tests: Add test for opening cache file with DELETE access.
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/urlmon/tests/url.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/dlls/urlmon/tests/url.c b/dlls/urlmon/tests/url.c
index 893632f..ada78c9 100644
--- a/dlls/urlmon/tests/url.c
+++ b/dlls/urlmon/tests/url.c
@@ -182,6 +182,7 @@ static HRESULT abort_hres;
static BOOL have_IHttpNegotiate2, use_bscex, is_async_prot;
static BOOL test_redirect, use_cache_file, callback_read, no_callback, test_abort;
static WCHAR cache_file_name[MAX_PATH];
+static WCHAR http_cache_file[MAX_PATH];
static BOOL only_check_prot_args = FALSE;
static BOOL invalid_cn_accepted = FALSE;
static BOOL abort_start = FALSE;
@@ -1927,6 +1928,14 @@ static HRESULT WINAPI statusclb_OnStopBinding(IBindStatusCallbackEx *iface, HRES
ok( WaitForSingleObject(complete_event2, 90000) == WAIT_OBJECT_0, "wait timed out\n" );
}
+ if(test_protocol == HTTP_TEST && !emulate_protocol && http_cache_file[0]) {
+ HANDLE file = CreateFileW(http_cache_file, DELETE, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
+ NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
+ ok(file == INVALID_HANDLE_VALUE, "expected INVALID_HANDLE_VALUE, got %p\n", file);
+ ok(GetLastError() == ERROR_SHARING_VIOLATION, "expected ERROR_SHARING_VIOLATION, got %u\n", GetLastError());
+ http_cache_file[0] = 0;
+ }
+
return S_OK;
}
@@ -2083,6 +2092,8 @@ static HRESULT WINAPI statusclb_OnDataAvailable(IBindStatusCallbackEx *iface, DW
else if(emulate_protocol)
ok(!lstrcmpW(pstgmed->u.lpszFileName, cache_fileW),
"unexpected file name %s\n", wine_dbgstr_w(pstgmed->u.lpszFileName));
+ else if(test_protocol == HTTP_TEST)
+ lstrcpyW(http_cache_file, pstgmed->u.lpszFileName);
else
ok(pstgmed->u.lpszFileName != NULL, "lpszFileName == NULL\n");
}
More information about the wine-cvs
mailing list