Paul Vriens : advapi32/tests: Add some ClearEventLog tests.
Alexandre Julliard
julliard at winehq.org
Wed Nov 4 10:26:22 CST 2009
Module: wine
Branch: master
Commit: e13ead694973add3eb0362b1dc0df84c87c30ca7
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e13ead694973add3eb0362b1dc0df84c87c30ca7
Author: Paul Vriens <Paul.Vriens.Wine at gmail.com>
Date: Wed Nov 4 07:58:41 2009 +0100
advapi32/tests: Add some ClearEventLog tests.
---
dlls/advapi32/tests/eventlog.c | 67 +++++++++++++++++++++++++++++++++++++--
1 files changed, 63 insertions(+), 4 deletions(-)
diff --git a/dlls/advapi32/tests/eventlog.c b/dlls/advapi32/tests/eventlog.c
index 8a96c69..99990a2 100644
--- a/dlls/advapi32/tests/eventlog.c
+++ b/dlls/advapi32/tests/eventlog.c
@@ -36,6 +36,16 @@ static void init_function_pointers(void)
pGetEventLogInformation = (void*)GetProcAddress(hadvapi32, "GetEventLogInformation");
}
+static void create_backup(const char *filename)
+{
+ HANDLE handle;
+
+ DeleteFileA(filename);
+ handle = OpenEventLogA(NULL, "Application");
+ BackupEventLogA(handle, filename);
+ CloseEventLog(handle);
+}
+
static void test_open_close(void)
{
HANDLE handle;
@@ -434,10 +444,7 @@ static void test_openbackup(void)
"Expected RPC_S_SERVER_UNAVAILABLE, got %d\n", GetLastError());
/* Make a backup eventlog to work with */
- DeleteFileA(backup);
- handle = OpenEventLogA(NULL, "Application");
- BackupEventLogA(handle, backup);
- CloseEventLog(handle);
+ create_backup(backup);
/* FIXME: Wine stops here */
if (GetFileAttributesA(backup) == INVALID_FILE_ATTRIBUTES)
@@ -493,6 +500,57 @@ static void test_openbackup(void)
DeleteFileA(backup);
}
+static void test_clear(void)
+{
+ HANDLE handle;
+ BOOL ret;
+ const char backup[] = "backup.evt";
+
+ SetLastError(0xdeadbeef);
+ ret = ClearEventLogA(NULL, NULL);
+ todo_wine
+ {
+ ok(!ret, "Expected failure\n");
+ ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+ }
+
+ /* Make a backup eventlog to work with */
+ create_backup(backup);
+
+ SetLastError(0xdeadbeef);
+ ret = ClearEventLogA(NULL, backup);
+ todo_wine
+ {
+ ok(!ret, "Expected failure\n");
+ ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+ }
+
+ handle = OpenBackupEventLogA(NULL, backup);
+ todo_wine
+ ok(handle != NULL, "Expected a handle\n");
+
+ /* A real eventlog would fail with ERROR_ALREADY_EXISTS */
+ SetLastError(0xdeadbeef);
+ ret = ClearEventLogA(handle, backup);
+ todo_wine
+ {
+ ok(!ret, "Expected failure\n");
+ ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+ }
+
+ /* Show that ClearEventLog only works for real eventlogs. */
+ SetLastError(0xdeadbeef);
+ ret = ClearEventLogA(handle, NULL);
+ todo_wine
+ {
+ ok(!ret, "Expected failure\n");
+ ok(GetLastError() == ERROR_INVALID_HANDLE, "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+ }
+
+ CloseEventLog(handle);
+ DeleteFileA(backup);
+}
+
START_TEST(eventlog)
{
SetLastError(0xdeadbeef);
@@ -513,4 +571,5 @@ START_TEST(eventlog)
test_backup();
test_openbackup();
test_read();
+ test_clear();
}
More information about the wine-cvs
mailing list