Andrew Nguyen : kernel32/tests: Add tests for IsBadReadPtr.
Alexandre Julliard
julliard at winehq.org
Mon Jan 18 10:58:56 CST 2010
Module: wine
Branch: master
Commit: 4108fd0f35190a5e84031d3fa6699fcd517411cc
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4108fd0f35190a5e84031d3fa6699fcd517411cc
Author: Andrew Nguyen <arethusa26 at gmail.com>
Date: Mon Jan 18 04:43:52 2010 -0600
kernel32/tests: Add tests for IsBadReadPtr.
---
dlls/kernel32/tests/virtual.c | 27 ++++++++++++++++++++++++++-
1 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/dlls/kernel32/tests/virtual.c b/dlls/kernel32/tests/virtual.c
index 5187a97..fb084e8 100644
--- a/dlls/kernel32/tests/virtual.c
+++ b/dlls/kernel32/tests/virtual.c
@@ -872,11 +872,35 @@ static void test_CreateFileMapping(void)
CloseHandle( handle );
}
+static void test_IsBadReadPtr(void)
+{
+ BOOL ret;
+ void *ptr = (void *)0xdeadbeef;
+ char stackvar;
+
+ ret = IsBadReadPtr(NULL, 0);
+ ok(ret == FALSE, "Expected IsBadReadPtr to return FALSE, got %d\n", ret);
+
+ ret = IsBadReadPtr(NULL, 1);
+ ok(ret == TRUE, "Expected IsBadReadPtr to return TRUE, got %d\n", ret);
+
+ ret = IsBadReadPtr(ptr, 0);
+ ok(ret == FALSE, "Expected IsBadReadPtr to return FALSE, got %d\n", ret);
+
+ ret = IsBadReadPtr(ptr, 1);
+ ok(ret == TRUE, "Expected IsBadReadPtr to return TRUE, got %d\n", ret);
+
+ ret = IsBadReadPtr(&stackvar, 0);
+ ok(ret == FALSE, "Expected IsBadReadPtr to return FALSE, got %d\n", ret);
+
+ ret = IsBadReadPtr(&stackvar, sizeof(char));
+ ok(ret == FALSE, "Expected IsBadReadPtr to return FALSE, got %d\n", ret);
+}
+
static void test_BadPtr(void)
{
void *ptr = (void*)1;
/* We assume address 1 is not mapped. */
- ok(IsBadReadPtr(ptr,1),"IsBadReadPtr(1) failed.\n");
ok(IsBadWritePtr(ptr,1),"IsBadWritePtr(1) failed.\n");
ok(IsBadCodePtr(ptr),"IsBadCodePtr(1) failed.\n");
}
@@ -1220,6 +1244,7 @@ START_TEST(virtual)
test_MapViewOfFile();
test_NtMapViewOfSection();
test_CreateFileMapping();
+ test_IsBadReadPtr();
test_BadPtr();
test_write_watch();
}
More information about the wine-cvs
mailing list