Module: wine Branch: refs/heads/master Commit: c824e8bc5b5c2bfcf56a04fe92f7f7bfe8ac1379 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=c824e8bc5b5c2bfcf56a04fe...
Author: Detlef Riekenberg wine.dev@web.de Date: Mon Jan 23 17:29:41 2006 +0100
advpack/tests: Fixed failure when "ProgramFilesDir" is != "C:\Program Files".
---
dlls/advpack/tests/Makefile.in | 2 +- dlls/advpack/tests/advpack.c | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/dlls/advpack/tests/Makefile.in b/dlls/advpack/tests/Makefile.in index dd5e41b..00c0e26 100644 --- a/dlls/advpack/tests/Makefile.in +++ b/dlls/advpack/tests/Makefile.in @@ -3,7 +3,7 @@ TOPOBJDIR = ../../.. SRCDIR = @srcdir@ VPATH = @srcdir@ TESTDLL = advpack.dll -IMPORTS = cabinet user32 kernel32 +IMPORTS = cabinet user32 advapi32 kernel32
CTESTS = \ advpack.c \ diff --git a/dlls/advpack/tests/advpack.c b/dlls/advpack/tests/advpack.c index c5972cd..2d82964 100644 --- a/dlls/advpack/tests/advpack.c +++ b/dlls/advpack/tests/advpack.c @@ -25,7 +25,7 @@ #include <assert.h> #include "wine/test.h"
-#define TEST_STRING1 "C:\Program Files\Application Name" +#define TEST_STRING1 "\Application Name" #define TEST_STRING2 "%49001%\Application Name"
static HRESULT (WINAPI *pGetVersionFromFile)(LPSTR,LPDWORD,LPDWORD,BOOL); @@ -224,8 +224,20 @@ static void translateinfstring_test() if(hr == ERROR_SUCCESS) todo_wine { - ok(!strcmp(buffer, TEST_STRING1), "Expected %s, got %s\n", TEST_STRING1, buffer); - ok(dwSize == 34, "Expected size 34, got %ld\n", dwSize); + HKEY key; + DWORD len = MAX_PATH; + char cmpbuffer[MAX_PATH]; + LONG res = RegOpenKeyA(HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion", &key); + if(res == ERROR_SUCCESS) { + res = RegQueryValueExA(key, "ProgramFilesDir", NULL, NULL, (LPBYTE)cmpbuffer, &len); + if(res == ERROR_SUCCESS) { + strcat(cmpbuffer, TEST_STRING1); + ok(!strcmp(buffer, cmpbuffer), "Expected '%s', got '%s'\n", cmpbuffer, buffer); + ok(dwSize == (strlen(cmpbuffer)+1), "Expected size %d, got %ld\n", + strlen(cmpbuffer)+1, dwSize); + } + RegCloseKey(key); + } }
buffer[0] = 0;