Nikolay Sivov : shell32/tests: Minor test file cleanup.

Alexandre Julliard julliard at winehq.org
Wed Mar 3 11:15:46 CST 2010


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

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Wed Mar  3 00:00:52 2010 +0300

shell32/tests: Minor test file cleanup.

---

 dlls/shell32/tests/shlfolder.c |   66 ++++++++++++++++++++++++----------------
 1 files changed, 40 insertions(+), 26 deletions(-)

diff --git a/dlls/shell32/tests/shlfolder.c b/dlls/shell32/tests/shlfolder.c
index 31ae05a..27c6ee8 100644
--- a/dlls/shell32/tests/shlfolder.c
+++ b/dlls/shell32/tests/shlfolder.c
@@ -62,17 +62,23 @@ static void init_function_pointers(void)
     HRESULT hr;
 
     hmod = GetModuleHandleA("shell32.dll");
-    pSHBindToParent = (void*)GetProcAddress(hmod, "SHBindToParent");
-    pSHGetFolderPathA = (void*)GetProcAddress(hmod, "SHGetFolderPathA");
-    pSHGetFolderPathAndSubDirA = (void*)GetProcAddress(hmod, "SHGetFolderPathAndSubDirA");
-    pSHGetPathFromIDListW = (void*)GetProcAddress(hmod, "SHGetPathFromIDListW");
-    pSHGetSpecialFolderPathA = (void*)GetProcAddress(hmod, "SHGetSpecialFolderPathA");
-    pSHGetSpecialFolderPathW = (void*)GetProcAddress(hmod, "SHGetSpecialFolderPathW");
-    pILFindLastID = (void *)GetProcAddress(hmod, (LPCSTR)16);
-    pILFree = (void*)GetProcAddress(hmod, (LPSTR)155);
-    pILIsEqual = (void*)GetProcAddress(hmod, (LPSTR)21);
-    pSHCreateShellItem = (void*)GetProcAddress(hmod, "SHCreateShellItem");
-    pILCombine = (void*)GetProcAddress(hmod, (LPSTR)25);
+
+#define MAKEFUNC(f) (p##f = (void*)GetProcAddress(hmod, #f))
+    MAKEFUNC(SHBindToParent);
+    MAKEFUNC(SHCreateShellItem);
+    MAKEFUNC(SHGetFolderPathA);
+    MAKEFUNC(SHGetFolderPathAndSubDirA);
+    MAKEFUNC(SHGetPathFromIDListW);
+    MAKEFUNC(SHGetSpecialFolderPathA);
+    MAKEFUNC(SHGetSpecialFolderPathW);
+#undef MAKEFUNC
+
+#define MAKEFUNC_ORD(f, ord) (p##f = (void*)GetProcAddress(hmod, (LPSTR)(ord)))
+    MAKEFUNC_ORD(ILFindLastID, 16);
+    MAKEFUNC_ORD(ILIsEqual, 21);
+    MAKEFUNC_ORD(ILCombine, 25);
+    MAKEFUNC_ORD(ILFree, 155);
+#undef MAKEFUNC_ORD
 
     hmod = GetModuleHandleA("shlwapi.dll");
     pStrRetToBufW = (void*)GetProcAddress(hmod, "StrRetToBufW");
@@ -331,11 +337,12 @@ static void test_BindToObject(void)
     hr = IShellFolder_BindToObject(psfMyComputer, pidlEmpty, NULL, &IID_IShellFolder, (LPVOID*)&psfChild);
     ok (hr == E_INVALIDARG, "MyComputers's BindToObject should fail, when called with empty pidl! hr = %08x\n", hr);
 
-#if 0
+if (0)
+{
     /* this call segfaults on 98SE */
     hr = IShellFolder_BindToObject(psfMyComputer, NULL, NULL, &IID_IShellFolder, (LPVOID*)&psfChild);
     ok (hr == E_INVALIDARG, "MyComputers's BindToObject should fail, when called with NULL pidl! hr = %08x\n", hr);
-#endif
+}
 
     cChars = GetSystemDirectoryA(szSystemDir, MAX_PATH);
     ok (cChars > 0 && cChars < MAX_PATH, "GetSystemDirectoryA failed! LastError: %u\n", GetLastError());
@@ -361,13 +368,14 @@ static void test_BindToObject(void)
     hr = IShellFolder_BindToObject(psfSystemDir, pidlEmpty, NULL, &IID_IShellFolder, (LPVOID*)&psfChild);
     ok (hr == E_INVALIDARG, 
         "FileSystem ShellFolder's BindToObject should fail, when called with empty pidl! hr = %08x\n", hr);
-    
-#if 0
+
+if (0)
+{
     /* this call segfaults on 98SE */
     hr = IShellFolder_BindToObject(psfSystemDir, NULL, NULL, &IID_IShellFolder, (LPVOID*)&psfChild);
-    ok (hr == E_INVALIDARG, 
+    ok (hr == E_INVALIDARG,
         "FileSystem ShellFolder's BindToObject should fail, when called with NULL pidl! hr = %08x\n", hr);
-#endif
+}
 
     IShellFolder_Release(psfSystemDir);
 }
@@ -1564,7 +1572,7 @@ static void test_ITEMIDLIST_format(void) {
     IShellFolder_Release(psfPersonal);
 }
 
-static void testSHGetFolderPathAndSubDirA(void)
+static void test_SHGetFolderPathAndSubDirA(void)
 {
     HRESULT ret;
     BOOL delret;
@@ -1576,6 +1584,12 @@ static void testSHGetFolderPathAndSubDirA(void)
     static char testpath[MAX_PATH];
     static char toolongpath[MAX_PATH+1];
 
+    if(!pSHGetFolderPathAndSubDirA)
+    {
+        win_skip("SHGetFolderPathAndSubDirA not present!\n");
+        return;
+    }
+
     if(!pSHGetFolderPathA) {
         win_skip("SHGetFolderPathA not present!\n");
         return;
@@ -1797,6 +1811,12 @@ static void test_SHCreateShellItem(void)
 
     GetCurrentDirectoryA(MAX_PATH, curdirA);
 
+    if (!pSHCreateShellItem)
+    {
+        win_skip("SHCreateShellItem isn't available\n");
+        return;
+    }
+
     if (!lstrlenA(curdirA))
     {
         win_skip("GetCurrentDirectoryA returned empty string, skipping test_SHCreateShellItem\n");
@@ -1958,15 +1978,9 @@ START_TEST(shlfolder)
     test_CallForAttributes();
     test_FolderShortcut();
     test_ITEMIDLIST_format();
-    if(pSHGetFolderPathAndSubDirA)
-        testSHGetFolderPathAndSubDirA();
-    else
-        win_skip("SHGetFolderPathAndSubDirA not present\n");
+    test_SHGetFolderPathAndSubDirA();
     test_LocalizedNames();
-    if(pSHCreateShellItem)
-        test_SHCreateShellItem();
-    else
-        win_skip("SHCreateShellItem not present\n");
+    test_SHCreateShellItem();
 
     OleUninitialize();
 }




More information about the wine-cvs mailing list