From 40d74488957fb775a47913377fb6b2b3832a04f6 Mon Sep 17 00:00:00 2001 From: Detlef Riekenberg Date: Fri, 17 Oct 2008 16:38:55 +0200 Subject: [PATCH] shlwapi/tests: Replace RegDeleteTreeW to run the tests again. --- dlls/shlwapi/tests/assoc.c | 59 ++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 33 deletions(-) diff --git a/dlls/shlwapi/tests/assoc.c b/dlls/shlwapi/tests/assoc.c index 2e383bb959e..aa01814eec7 100644 --- a/dlls/shlwapi/tests/assoc.c +++ b/dlls/shlwapi/tests/assoc.c @@ -32,19 +32,6 @@ static const WCHAR dotBad[] = { '.','b','a','d',0 }; static const WCHAR open[] = { 'o','p','e','n',0 }; static const WCHAR invalid[] = { 'i','n','v','a','l','i','d',0 }; -/* copied from libs/wine/string.c */ -WCHAR *strstrW(const WCHAR *str, const WCHAR *sub) -{ - while (*str) - { - const WCHAR *p1 = str, *p2 = sub; - while (*p1 && *p2 && *p1 == *p2) { p1++; p2++; } - if (!*p2) return (WCHAR *)str; - str++; - } - return NULL; -} - static void test_getstring_bad(void) { HRESULT hr; @@ -145,57 +132,63 @@ static void test_getstring_no_extra(void) LONG ret; HKEY hkey; HRESULT hr; - static const WCHAR dotWinetest[] = { + static const CHAR dotWinetest[] = { '.','w','i','n','e','t','e','s','t',0 }; - static const WCHAR winetestfile[] = { + static const CHAR winetestfile[] = { 'w','i','n','e','t','e','s','t', 'f','i','l','e',0 }; - static const WCHAR winetestfileAction[] = { + static const CHAR winetestfileAction[] = { 'w','i','n','e','t','e','s','t','f','i','l','e', '\\','s','h','e','l','l', '\\','f','o','o', '\\','c','o','m','m','a','n','d',0 }; - static const WCHAR action[] = { + static const CHAR action[] = { 'n','o','t','e','p','a','d','.','e','x','e',0 }; - WCHAR buf[MAX_PATH]; + CHAR buf[MAX_PATH]; DWORD len = MAX_PATH; - ret = RegCreateKeyW(HKEY_CLASSES_ROOT, dotWinetest, &hkey); - if (ret != ERROR_SUCCESS) + buf[0] = '\0'; + ret = RegCreateKeyA(HKEY_CLASSES_ROOT, dotWinetest, &hkey); + if (ret != ERROR_SUCCESS) { skip("failed to create dotWinetest key\n"); - ret = RegSetValueW(hkey, NULL, REG_SZ, winetestfile, - lstrlenW(winetestfile)); + return; + } + + ret = RegSetValueA(hkey, NULL, REG_SZ, winetestfile, lstrlenA(winetestfile)); RegCloseKey(hkey); if (ret != ERROR_SUCCESS) { - RegDeleteTreeW(HKEY_CLASSES_ROOT, dotWinetest); skip("failed to set dotWinetest key\n"); + goto cleanup; } - ret = RegCreateKeyW(HKEY_CLASSES_ROOT, winetestfileAction, &hkey); + ret = RegCreateKeyA(HKEY_CLASSES_ROOT, winetestfileAction, &hkey); if (ret != ERROR_SUCCESS) { - RegDeleteTreeW(HKEY_CLASSES_ROOT, dotWinetest); skip("failed to create winetestfileAction key\n"); + goto cleanup; } - ret = RegSetValueW(hkey, NULL, REG_SZ, action, lstrlenW(action)); + + ret = RegSetValueA(hkey, NULL, REG_SZ, action, lstrlenA(action)); RegCloseKey(hkey); if (ret != ERROR_SUCCESS) { - RegDeleteTreeW(HKEY_CLASSES_ROOT, dotWinetest); - RegDeleteTreeW(HKEY_CLASSES_ROOT, winetestfile); skip("failed to set winetestfileAction key\n"); + goto cleanup; } - hr = AssocQueryStringW(0, ASSOCSTR_EXECUTABLE, dotWinetest, NULL, - buf, &len); + hr = AssocQueryStringA(0, ASSOCSTR_EXECUTABLE, dotWinetest, NULL, buf, &len); expect_hr(S_OK, hr); - ok(strstrW(buf, action) != NULL, "exe path does not contain notepad\n"); - RegDeleteTreeW(HKEY_CLASSES_ROOT, dotWinetest); - RegDeleteTreeW(HKEY_CLASSES_ROOT, winetestfile); + ok(strstr(buf, action) != NULL, + "got '%s' (Expected result to include 'notepad.exe')\n", buf); + +cleanup: + SHDeleteKeyA(HKEY_CLASSES_ROOT, dotWinetest); + SHDeleteKeyA(HKEY_CLASSES_ROOT, winetestfile); + } START_TEST(assoc) -- 2.11.4.GIT