Module: wine Branch: master Commit: 5f4f215c2d9dd9465b8a96e00e6e9b10ec84a515 URL: http://source.winehq.org/git/wine.git/?a=commit;h=5f4f215c2d9dd9465b8a96e00e...
Author: Jacek Caban jacek@codeweavers.com Date: Wed Dec 19 14:17:07 2012 +0100
atl100: Added AtlWinModuleExtractCreateWndData tests.
---
dlls/atl100/tests/atl.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-)
diff --git a/dlls/atl100/tests/atl.c b/dlls/atl100/tests/atl.c index 43d9bd5..7e6a7e0 100644 --- a/dlls/atl100/tests/atl.c +++ b/dlls/atl100/tests/atl.c @@ -27,7 +27,9 @@
static void test_winmodule(void) { + _AtlCreateWndData create_data[3]; _ATL_WIN_MODULE winmod; + void *p; HRESULT hres;
winmod.cbSize = 0xdeadbeef; @@ -51,6 +53,46 @@ static void test_winmodule(void) winmod.m_rgWindowClassAtoms.m_nSize); ok(winmod.m_rgWindowClassAtoms.m_nAllocSize == 0xdeadbeef, "winmod.m_rgWindowClassAtoms.m_nAllocSize = %d\n", winmod.m_rgWindowClassAtoms.m_nAllocSize); + + InitializeCriticalSection(&winmod.m_csWindowCreate); + + AtlWinModuleAddCreateWndData(&winmod, create_data, (void*)0xdead0001); + ok(winmod.m_pCreateWndList == create_data, "winmod.m_pCreateWndList != create_data\n"); + ok(create_data[0].m_pThis == (void*)0xdead0001, "unexpected create_data[0].m_pThis %p\n", create_data[0].m_pThis); + ok(create_data[0].m_dwThreadID == GetCurrentThreadId(), "unexpected create_data[0].m_dwThreadID %x\n", + create_data[0].m_dwThreadID); + ok(!create_data[0].m_pNext, "unexpected create_data[0].m_pNext %p\n", create_data[0].m_pNext); + + AtlWinModuleAddCreateWndData(&winmod, create_data+1, (void*)0xdead0002); + ok(winmod.m_pCreateWndList == create_data+1, "winmod.m_pCreateWndList != create_data\n"); + ok(create_data[1].m_pThis == (void*)0xdead0002, "unexpected create_data[1].m_pThis %p\n", create_data[1].m_pThis); + ok(create_data[1].m_dwThreadID == GetCurrentThreadId(), "unexpected create_data[1].m_dwThreadID %x\n", + create_data[1].m_dwThreadID); + ok(create_data[1].m_pNext == create_data, "unexpected create_data[1].m_pNext %p\n", create_data[1].m_pNext); + + AtlWinModuleAddCreateWndData(&winmod, create_data+2, (void*)0xdead0003); + ok(winmod.m_pCreateWndList == create_data+2, "winmod.m_pCreateWndList != create_data\n"); + ok(create_data[2].m_pThis == (void*)0xdead0003, "unexpected create_data[2].m_pThis %p\n", create_data[2].m_pThis); + ok(create_data[2].m_dwThreadID == GetCurrentThreadId(), "unexpected create_data[2].m_dwThreadID %x\n", + create_data[2].m_dwThreadID); + ok(create_data[2].m_pNext == create_data+1, "unexpected create_data[2].m_pNext %p\n", create_data[2].m_pNext); + + p = AtlWinModuleExtractCreateWndData(&winmod); + ok(p == (void*)0xdead0003, "unexpected AtlWinModuleExtractCreateWndData result %p\n", p); + ok(winmod.m_pCreateWndList == create_data+1, "winmod.m_pCreateWndList != create_data\n"); + ok(create_data[2].m_pNext == create_data+1, "unexpected create_data[2].m_pNext %p\n", create_data[2].m_pNext); + + create_data[1].m_dwThreadID = 0xdeadbeef; + + p = AtlWinModuleExtractCreateWndData(&winmod); + ok(p == (void*)0xdead0001, "unexpected AtlWinModuleExtractCreateWndData result %p\n", p); + ok(winmod.m_pCreateWndList == create_data+1, "winmod.m_pCreateWndList != create_data\n"); + ok(!create_data[0].m_pNext, "unexpected create_data[0].m_pNext %p\n", create_data[0].m_pNext); + ok(!create_data[1].m_pNext+1, "unexpected create_data[1].m_pNext %p\n", create_data[1].m_pNext); + + p = AtlWinModuleExtractCreateWndData(&winmod); + ok(!p, "unexpected AtlWinModuleExtractCreateWndData result %p\n", p); + ok(winmod.m_pCreateWndList == create_data+1, "winmod.m_pCreateWndList != create_data\n"); }
START_TEST(atl)