kernel32: Add a test for deleting an opened for reading file.

Dmitry Timoshkov dmitry at baikal.ru
Thu Jun 21 03:08:58 CDT 2012


---
 dlls/kernel32/tests/file.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/dlls/kernel32/tests/file.c b/dlls/kernel32/tests/file.c
index 8768b99..194f23a 100644
--- a/dlls/kernel32/tests/file.c
+++ b/dlls/kernel32/tests/file.c
@@ -3236,6 +3236,30 @@ static void test_CreatFile(void)
 
     DeleteFile(file_name);
 }
+static void test_delete_file(void)
+{
+    char temp_path[MAX_PATH], temp_file[MAX_PATH];
+    HANDLE hfile;
+    int ret;
+
+    GetTempPathA(MAX_PATH, temp_path);
+    GetTempFileName(temp_path, "tst", 0, temp_file);
+
+    SetLastError(0xdeadbeef);
+    hfile = CreateFile(temp_file, GENERIC_READ, FILE_SHARE_DELETE | FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, 0);
+    ok(hfile != INVALID_HANDLE_VALUE, "CreateFile error %d\n", GetLastError());
+
+    SetLastError(0xdeadbeef);
+    ret = DeleteFile(filename);
+todo_wine
+    ok(ret, "DeleteFile error %d\n", GetLastError());
+
+    SetLastError(0xdeadbeef);
+    ret = CloseHandle(hfile);
+    ok(ret, "CloseHandle error %d\n", GetLastError());
+    ret = DeleteFile(filename);
+    ok(!ret, "DeleteFile should fail\n");
+}
 
 START_TEST(file)
 {
@@ -3257,6 +3281,7 @@ START_TEST(file)
     test_CreateFileW();
     test_DeleteFileA();
     test_DeleteFileW();
+    test_delete_file();
     test_MoveFileA();
     test_MoveFileW();
     test_FindFirstFileA();
-- 
1.7.11




More information about the wine-patches mailing list