Jacek Caban : atl100: Added AtlWinModuleExtractCreateWndData tests.

Alexandre Julliard julliard at winehq.org
Wed Dec 19 14:01:11 CST 2012


Module: wine
Branch: master
Commit: 5f4f215c2d9dd9465b8a96e00e6e9b10ec84a515
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=5f4f215c2d9dd9465b8a96e00e6e9b10ec84a515

Author: Jacek Caban <jacek at 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)




More information about the wine-cvs mailing list