kernel32/tests: Skip tests if function is not implemented.
authorPaul Vriens <paul.vriens.wine@gmail.com>
Fri, 13 Jun 2008 09:44:44 +0000 (11:44 +0200)
committerAlexandre Julliard <julliard@winehq.org>
Fri, 13 Jun 2008 10:07:49 +0000 (12:07 +0200)
dlls/kernel32/tests/file.c

index 48f57d54c58a8720c9ba954c8e0957c297fef44c..57e0496fab4b0d04ba77d35b3a46187d46f64e34 100644 (file)
@@ -1446,7 +1446,13 @@ static void test_FindFirstFileExA(void)
     _lclose(_lcreat("test-dir\\file2", 0));
     CreateDirectoryA("test-dir\\dir1", NULL);
     /* FindExLimitToDirectories is ignored */
+    SetLastError(0xdeadbeef);
     handle = pFindFirstFileExA("test-dir\\*", FindExInfoStandard, &search_results, FindExSearchLimitToDirectories, NULL, 0);
+    if (handle == INVALID_HANDLE_VALUE && GetLastError() == ERROR_CALL_NOT_IMPLEMENTED)
+    {
+        skip("FindFirstFileExA is not implemented\n");
+        goto cleanup;
+    }
     ok(handle != INVALID_HANDLE_VALUE, "FindFirstFile failed (err=%u)\n", GetLastError());
     ok(strcmp(search_results.cFileName, ".") == 0, "First entry should be '.', is %s\n", search_results.cFileName);
 
@@ -1467,6 +1473,8 @@ static void test_FindFirstFileExA(void)
 #undef CHECK_NAME
 
     ok(FindNextFile(handle, &search_results) == FALSE, "Fetching sixth file should failed\n");
+
+cleanup:
     DeleteFileA("test-dir\\file1");
     DeleteFileA("test-dir\\file2");
     RemoveDirectoryA("test-dir\\dir1");