fusion/tests: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
4031a388dc
commit
f921ae8bc6
|
@ -627,7 +627,7 @@ static struct _tagASSEMBLY
|
|||
0x23C, /* wLength */
|
||||
0x34, /* wValueLength */
|
||||
0, /* wType */
|
||||
{ 'V','S','_','V','E','R','S','I','O','N','_','I','N','F','O',0,0 }, /* szKey */
|
||||
{ L"VS_VERSION_INFO" }, /* szKey */
|
||||
/* VS_FIXEDFILEINFO */
|
||||
{
|
||||
VS_FFI_SIGNATURE, /* dwSignature */
|
||||
|
@ -650,14 +650,14 @@ static struct _tagASSEMBLY
|
|||
0x44, /* wLength */
|
||||
0, /* wValueLength */
|
||||
1, /* wType */
|
||||
{ 'V','a','r','F','i','l','e','I','n','f','o',0,0 } /* szKey */
|
||||
{ L"VarFileInfo" } /* szKey */
|
||||
},
|
||||
/* VAR */
|
||||
{
|
||||
0x24, /* wLength */
|
||||
0x4, /* wValueLength */
|
||||
0, /* wType */
|
||||
{ 'T','r','a','n','s','l','a','t','i','o','n',0,0 }, /* szKey */
|
||||
{ L"Translation" }, /* szKey */
|
||||
0x4B00000, /* Value */
|
||||
},
|
||||
/* STRINGFILEINFO */
|
||||
|
@ -665,14 +665,14 @@ static struct _tagASSEMBLY
|
|||
0x19C, /* wLength */
|
||||
0, /* wValueLength */
|
||||
1, /* wType */
|
||||
{ 'S','t','r','i','n','g','F','i','l','e','I','n','f','o',0 }, /* szKey */
|
||||
{ L"StringFileInfo" }, /* szKey */
|
||||
},
|
||||
/* STRINGTABLE */
|
||||
{
|
||||
0x178, /* wLength */
|
||||
0, /* wValueLength */
|
||||
1, /* wType */
|
||||
{ '0','0','0','0','0','4','b','0',0 }, /* szKey */
|
||||
{ L"000004b0" }, /* szKey */
|
||||
},
|
||||
/* STRINGHDR */
|
||||
{
|
||||
|
@ -680,56 +680,56 @@ static struct _tagASSEMBLY
|
|||
2, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'F','i','l','e','D','e','s','c','r','i','p','t','i','o','n',0,0 }, /* szKey */
|
||||
{ ' ',0 }, /* szValue */
|
||||
{ L"FileDescription" }, /* szKey */
|
||||
{ L" " }, /* szValue */
|
||||
/* STRINGHDR */
|
||||
{
|
||||
0x30, /* wLength */
|
||||
8, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'F','i','l','e','V','e','r','s','i','o','n',0,0 }, /* szKey */
|
||||
{ '1','.','0','.','0','.','0',0 }, /* szValue */
|
||||
{ L"FileVersion" }, /* szKey */
|
||||
{ L"1.0.0.0" }, /* szValue */
|
||||
/* STRINGHDR */
|
||||
{
|
||||
0x34, /* wLength */
|
||||
9, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'I','n','t','e','r','n','a','l','N','a','m','e',0 }, /* szKey */
|
||||
{ 'w','i','n','e','.','d','l','l',0 }, /* szValue */
|
||||
{ L"InternalName" }, /* szKey */
|
||||
{ L"wine.dll" }, /* szValue */
|
||||
/* STRINGHDR */
|
||||
{
|
||||
0x28, /* wLength */
|
||||
2, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'L','e','g','a','l','C','o','p','y','r','i','g','h','t',0 }, /* szKey */
|
||||
{ ' ',0 }, /* szValue */
|
||||
{ L"LegalCopyright" }, /* szKey */
|
||||
{ L" " }, /* szValue */
|
||||
/* STRINGHDR */
|
||||
{
|
||||
0x3C, /* wLength */
|
||||
9, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'O','r','i','g','i','n','a','l','F','i','l','e','n','a','m','e',0 }, /* szKey */
|
||||
{ 'w','i','n','e','.','d','l','l',0,0 }, /* szValue */
|
||||
{ L"OriginalFilename" }, /* szKey */
|
||||
{ L"wine.dll" }, /* szValue */
|
||||
/* STRINGHDR */
|
||||
{
|
||||
0x34, /* wLength */
|
||||
8, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'P','r','o','d','u','c','t','V','e','r','s','i','o','n',0 }, /* szKey */
|
||||
{ '1','.','0','.','0','.','0',0 }, /* szValue */
|
||||
{ L"ProductVersion" }, /* szKey */
|
||||
{ L"1.0.0.0" }, /* szValue */
|
||||
/* STRINGHDR */
|
||||
{
|
||||
0x38, /* wLength */
|
||||
8, /* wValueLength */
|
||||
1, /* wType */
|
||||
},
|
||||
{ 'A','s','s','e','m','b','l','y',' ','V','e','r','s','i','o','n',0 }, /* szKey */
|
||||
{ '1','.','0','.','0','.','0',0 }, /* szValue */
|
||||
{ L"Assembly Version" }, /* szKey */
|
||||
{ L"1.0.0.0" }, /* szValue */
|
||||
{ 0 }, /* pad */
|
||||
/* RELOCATION */
|
||||
{
|
||||
|
@ -754,8 +754,6 @@ static BOOL init_functionpointers(void)
|
|||
HMODULE hfusion;
|
||||
HMODULE hmscoree;
|
||||
|
||||
static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
|
||||
|
||||
hmscoree = LoadLibraryA("mscoree.dll");
|
||||
if (!hmscoree)
|
||||
{
|
||||
|
@ -771,7 +769,7 @@ static BOOL init_functionpointers(void)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
|
||||
hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
win_skip("fusion.dll not available\n");
|
||||
|
@ -842,14 +840,12 @@ static BOOL check_dotnet20(void)
|
|||
BOOL ret = FALSE;
|
||||
ULONG disp;
|
||||
|
||||
static const WCHAR winedll[] = {'w','i','n','e','.','d','l','l',0};
|
||||
|
||||
create_assembly("wine.dll");
|
||||
|
||||
hr = pCreateAssemblyCache(&cache, 0);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, winedll, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"wine.dll", NULL);
|
||||
if (hr == S_OK)
|
||||
ret = TRUE;
|
||||
else if (hr == CLDB_E_FILE_OLDVER)
|
||||
|
@ -860,7 +856,7 @@ static BOOL check_dotnet20(void)
|
|||
ok(0, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
DeleteFileA("wine.dll");
|
||||
IAssemblyCache_UninstallAssembly(cache, 0, winedll, NULL, &disp);
|
||||
IAssemblyCache_UninstallAssembly(cache, 0, L"wine.dll", NULL, &disp);
|
||||
IAssemblyCache_Release(cache);
|
||||
return ret;
|
||||
}
|
||||
|
@ -887,8 +883,6 @@ static void test_CreateAssemblyCacheItem(void)
|
|||
IAssemblyCacheItem *item;
|
||||
HRESULT hr;
|
||||
|
||||
static const WCHAR wine[] = {'w','i','n','e',0};
|
||||
|
||||
hr = pCreateAssemblyCache(&cache, 0);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
|
@ -899,7 +893,7 @@ static void test_CreateAssemblyCacheItem(void)
|
|||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
IAssemblyCacheItem_Release(item);
|
||||
|
||||
hr = IAssemblyCache_CreateAssemblyCacheItem(cache, 0, NULL, &item, wine);
|
||||
hr = IAssemblyCache_CreateAssemblyCacheItem(cache, 0, NULL, &item, L"wine");
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
IAssemblyCacheItem_Release(item);
|
||||
|
||||
|
@ -926,15 +920,6 @@ static void test_InstallAssembly(void)
|
|||
DWORD attr;
|
||||
char dllpath[MAX_PATH];
|
||||
|
||||
static const WCHAR empty[] = {0};
|
||||
static const WCHAR noext[] = {'f','i','l','e',0};
|
||||
static const WCHAR badext[] = {'f','i','l','e','.','b','a','d',0};
|
||||
static const WCHAR dllext[] = {'f','i','l','e','.','d','l','l',0};
|
||||
static const WCHAR exeext[] = {'f','i','l','e','.','e','x','e',0};
|
||||
static const WCHAR testdll[] = {'t','e','s','t','.','d','l','l',0};
|
||||
static const WCHAR winedll[] = {'w','i','n','e','.','d','l','l',0};
|
||||
static const WCHAR wine[] = {'w','i','n','e',0};
|
||||
|
||||
create_file("test.dll", 100);
|
||||
create_assembly("wine.dll");
|
||||
|
||||
|
@ -946,36 +931,36 @@ static void test_InstallAssembly(void)
|
|||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
|
||||
/* empty pszManifestFilePath */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, empty, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"", NULL);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
|
||||
/* pszManifestFilePath has no extension */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, noext, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"file", NULL);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME),
|
||||
"Expected HRESULT_FROM_WIN32(ERROR_INVALID_NAME), got %08x\n", hr);
|
||||
|
||||
/* pszManifestFilePath has bad extension */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, badext, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"file.bad", NULL);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME),
|
||||
"Expected HRESULT_FROM_WIN32(ERROR_INVALID_NAME), got %08x\n", hr);
|
||||
|
||||
/* pszManifestFilePath has dll extension */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, dllext, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"file.dll", NULL);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
|
||||
|
||||
/* pszManifestFilePath has exe extension */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, exeext, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"file.exe", NULL);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
|
||||
|
||||
/* empty file */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, testdll, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"test.dll", NULL);
|
||||
ok(hr == COR_E_ASSEMBLYEXPECTED,
|
||||
"Expected COR_E_ASSEMBLYEXPECTED, got %08x\n", hr);
|
||||
|
||||
/* wine assembly */
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, winedll, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"wine.dll", NULL);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
GetWindowsDirectoryA(dllpath, MAX_PATH);
|
||||
|
@ -986,7 +971,7 @@ static void test_InstallAssembly(void)
|
|||
|
||||
/* uninstall the assembly from the GAC */
|
||||
disp = 0xf00dbad;
|
||||
hr = IAssemblyCache_UninstallAssembly(cache, 0, wine, NULL, &disp);
|
||||
hr = IAssemblyCache_UninstallAssembly(cache, 0, L"wine", NULL, &disp);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(disp == IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED,
|
||||
"Expected IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED, got %d\n", disp);
|
||||
|
@ -995,7 +980,7 @@ static void test_InstallAssembly(void)
|
|||
ok(attr == INVALID_FILE_ATTRIBUTES, "Expected assembly not to exist\n");
|
||||
|
||||
disp = 0xf00dbad;
|
||||
hr = IAssemblyCache_UninstallAssembly(cache, 0, wine, NULL, &disp);
|
||||
hr = IAssemblyCache_UninstallAssembly(cache, 0, L"wine", NULL, &disp);
|
||||
ok(hr == S_FALSE, "Expected S_FALSE, got %08x\n", hr);
|
||||
ok(disp == IASSEMBLYCACHE_UNINSTALL_DISPOSITION_ALREADY_UNINSTALLED,
|
||||
"Expected IASSEMBLYCACHE_UNINSTALL_DISPOSITION_ALREADY_UNINSTALLED, got %d\n", disp);
|
||||
|
@ -1023,50 +1008,11 @@ static void test_QueryAssemblyInfo(void)
|
|||
DWORD size;
|
||||
ULONG disp;
|
||||
|
||||
static const WCHAR empty[] = {0};
|
||||
static const WCHAR commasep[] = {',',' ',0};
|
||||
static const WCHAR winedll[] = {'w','i','n','e','.','d','l','l',0};
|
||||
static const WCHAR wine[] = {'w','i','n','e',0};
|
||||
static const WCHAR ver[] = {
|
||||
'V','e','r','s','i','o','n','=','1','.','0','.','0','.','0',0};
|
||||
static const WCHAR otherver[] = {
|
||||
'V','e','r','s','i','o','n','=','1','.','0','.','0','.','0','0','0','0','0',0};
|
||||
static const WCHAR badver[] = {
|
||||
'V','e','r','s','i','o','n','=','1','.','0','.','0','.','1',0};
|
||||
static const WCHAR culture[] = {
|
||||
'C','u','l','t','u','r','e','=','n','e','u','t','r','a','l',0};
|
||||
static const WCHAR badculture[] = {
|
||||
'C','u','l','t','u','r','e','=','e','n',0};
|
||||
static const WCHAR pubkey[] = {
|
||||
'P','u','b','l','i','c','K','e','y','T','o','k','e','n','=',
|
||||
'2','d','0','3','6','1','7','b','1','c','3','1','e','2','f','5',0};
|
||||
static const WCHAR badpubkey[] = {
|
||||
'P','u','b','l','i','c','K','e','y','T','o','k','e','n','=',
|
||||
'a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a',0};
|
||||
static const WCHAR badprop[] = {'B','a','d','P','r','o','p','=','b','u','h',0};
|
||||
static const WCHAR msil[] = {
|
||||
'_','M','S','I','L','\\','w','i','n','e','\\',
|
||||
'1','.','0','.','0','.','0','_','_','2','d','0','3','6','1','7','b',
|
||||
'1','c','3','1','e','2','f','5','\\',0};
|
||||
static const WCHAR wine2[] = {
|
||||
'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','1',',',
|
||||
'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=',
|
||||
'2','d','0','3','6','1','7','b','1','c','3','1','e','2','f','5',',',
|
||||
'c','u','l','t','u','r','e','=','n','e','u','t','r','a','l',0};
|
||||
static const WCHAR nullpublickey[] = {
|
||||
'm','s','c','o','r','l','i','b','.','d','l','l',',','v','e','r','s','i','o','n','=','0','.','0','.',
|
||||
'0','.','0',',','c','u','l','t','u','r','e','=','n','e','u','t','r','a','l',',',
|
||||
'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=','n','u','l','l',0};
|
||||
static const WCHAR nullpublickey1[] = {
|
||||
'm','s','c','o','r','l','i','b','.','d','l','l',',',
|
||||
'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=','n','u','L','l',0};
|
||||
|
||||
size = MAX_PATH;
|
||||
hr = pGetCachePath(ASM_CACHE_GAC, asmpath, &size);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
lstrcatW(asmpath, msil);
|
||||
lstrcatW(asmpath, winedll);
|
||||
lstrcatW(asmpath, L"_MSIL\\wine\\1.0.0.0__2d03617b1c31e2f5\\wine.dll");
|
||||
|
||||
create_assembly("wine.dll");
|
||||
|
||||
|
@ -1075,7 +1021,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* assembly not installed yet */
|
||||
INIT_ASM_INFO();
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, L"wine", &info);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
|
@ -1085,11 +1031,11 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, winedll, NULL);
|
||||
hr = IAssemblyCache_InstallAssembly(cache, 0, L"wine.dll", NULL);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
/* NULL pszAssemblyName */
|
||||
|
@ -1104,14 +1050,13 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* empty pszAssemblyName */
|
||||
INIT_ASM_INFO();
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
|
||||
empty, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"", &info);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1120,13 +1065,13 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* no dwFlags */
|
||||
INIT_ASM_INFO();
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, L"wine", &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1143,7 +1088,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* pwzCachePath is full filename */
|
||||
INIT_ASM_INFO();
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, winedll, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, L"wine.dll", &info);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
|
@ -1153,25 +1098,22 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* NULL pAsmInfo, QUERYASMINFO_FLAG_VALIDATE */
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
|
||||
wine, NULL);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"wine", NULL);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
/* NULL pAsmInfo, QUERYASMINFO_FLAG_GETSIZE */
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
wine, NULL);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", NULL);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
||||
/* info.cbAssemblyInfo is 0 */
|
||||
INIT_ASM_INFO();
|
||||
info.cbAssemblyInfo = 0;
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"wine", &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1189,8 +1131,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
/* info.cbAssemblyInfo is 1 */
|
||||
INIT_ASM_INFO();
|
||||
info.cbAssemblyInfo = 1;
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"wine", &info);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == 1, "Expected 1, got %d\n", info.cbAssemblyInfo);
|
||||
ok(info.dwAssemblyFlags == 0, "Expected 0, got %08x\n", info.dwAssemblyFlags);
|
||||
|
@ -1198,15 +1139,14 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* info.cbAssemblyInfo is > sizeof(ASSEMBLY_INFO) */
|
||||
INIT_ASM_INFO();
|
||||
info.cbAssemblyInfo = sizeof(ASSEMBLY_INFO) * 2;
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO) * 2,
|
||||
"Expected sizeof(ASSEMBLY_INFO) * 2, got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1215,14 +1155,13 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* QUERYASMINFO_FLAG_GETSIZE */
|
||||
INIT_ASM_INFO();
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1243,7 +1182,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
/* QUERYASMINFO_FLAG_GETSIZE and QUERYASMINFO_FLAG_VALIDATE */
|
||||
INIT_ASM_INFO();
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE |
|
||||
QUERYASMINFO_FLAG_VALIDATE,wine, &info);
|
||||
QUERYASMINFO_FLAG_VALIDATE, L"wine", &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1264,8 +1203,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
/* info.pszCurrentAssemblyPathBuf is NULL */
|
||||
INIT_ASM_INFO();
|
||||
info.pszCurrentAssemblyPathBuf = NULL;
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
ok(info.dwAssemblyFlags == ASSEMBLYINFO_FLAG_INSTALLED,
|
||||
|
@ -1284,15 +1222,14 @@ static void test_QueryAssemblyInfo(void)
|
|||
/* info.cchBuf is exactly size of asmpath */
|
||||
INIT_ASM_INFO();
|
||||
info.cchBuf = lstrlenW(asmpath);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
ok(info.dwAssemblyFlags == ASSEMBLYINFO_FLAG_INSTALLED,
|
||||
"Expected ASSEMBLYINFO_FLAG_INSTALLED, got %08x\n", info.dwAssemblyFlags);
|
||||
ok(info.uliAssemblySizeInKB.u.HighPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(hr == E_NOT_SUFFICIENT_BUFFER, "Expected E_NOT_SUFFICIENT_BUFFER, got %08x\n", hr);
|
||||
todo_wine
|
||||
|
@ -1306,8 +1243,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
/* info.cchBuf has room for NULL-terminator */
|
||||
INIT_ASM_INFO();
|
||||
info.cchBuf = lstrlenW(asmpath) + 1;
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
wine, &info);
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
|
||||
|
@ -1327,9 +1263,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* display name is "wine, Version=1.0.0.0" */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, ver);
|
||||
lstrcpyW(name, L"wine, Version=1.0.0.0");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
@ -1351,9 +1285,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* short buffer, QUERYASMINFO_FLAG_VALIDATE */
|
||||
memset(&info, 0, sizeof(info));
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, otherver);
|
||||
lstrcpyW(name, L"wine, Version=1.0.0.00000");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
|
||||
name, &info);
|
||||
ok(hr == E_NOT_SUFFICIENT_BUFFER, "got %08x\n", hr);
|
||||
|
@ -1361,9 +1293,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* short buffer, QUERYASMINFO_FLAG_GETSIZE */
|
||||
memset(&info, 0, sizeof(info));
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, otherver);
|
||||
lstrcpyW(name, L"wine, Version=1.0.0.00000");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == E_NOT_SUFFICIENT_BUFFER, "got %08x\n", hr);
|
||||
|
@ -1392,9 +1322,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* display name is "wine, Version=1.0.0.1", versions don't match */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, badver);
|
||||
lstrcpyW(name, L"wine, Version=1.0.0.1");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
|
@ -1406,13 +1334,13 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* display name is "wine,version=1.0.0.1,publicKeyToken=2d03617b1c31e2f5,culture=neutral" */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine2);
|
||||
lstrcpyW(name, L"wine,version=1.0.0.1,publicKeyToken=2d03617b1c31e2f5,culture=neutral");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
|
@ -1424,27 +1352,25 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* display name is "mscorlib.dll,version=0.0.0.0,culture=neutral,publicKeyToken=null" */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, nullpublickey);
|
||||
lstrcpyW(name, L"mscorlib.dll,version=0.0.0.0,culture=neutral,publicKeyToken=null");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, name, &info);
|
||||
ok(hr == FUSION_E_PRIVATE_ASM_DISALLOWED, "got %08x\n", hr);
|
||||
|
||||
/* display name is "mscorlib.dll,publicKeyToken=nuLl" */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, nullpublickey1);
|
||||
lstrcpyW(name, L"mscorlib.dll,publicKeyToken=nuLl");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, name, &info);
|
||||
ok(hr == FUSION_E_PRIVATE_ASM_DISALLOWED, "got %08x\n", hr);
|
||||
|
||||
/* display name is "wine, Culture=neutral" */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, culture);
|
||||
lstrcpyW(name, L"wine, Culture=neutral");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
@ -1466,9 +1392,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* display name is "wine, Culture=en", cultures don't match */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, badculture);
|
||||
lstrcpyW(name, L"wine, Culture=en");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
|
@ -1480,15 +1404,13 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* display name is "wine, PublicKeyTokens=2d03617b1c31e2f5" */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, pubkey);
|
||||
lstrcpyW(name, L"wine, PublicKeyToken=2d03617b1c31e2f5");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
@ -1510,9 +1432,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* display name is "wine, PublicKeyToken=aaaaaaaaaaaaaaaa", pubkeys don't match */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, badpubkey);
|
||||
lstrcpyW(name, L"wine, PublicKeyToken=aaaaaaaaaaaaaaaa");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
|
||||
|
@ -1524,15 +1444,13 @@ static void test_QueryAssemblyInfo(void)
|
|||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
|
||||
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
|
||||
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
|
||||
ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
|
||||
"Assembly path was changed\n");
|
||||
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
|
||||
|
||||
/* display name is "wine, BadProp=buh", bad property */
|
||||
INIT_ASM_INFO();
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, badprop);
|
||||
lstrcpyW(name, L"wine, BadProp=buh");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
|
||||
name, &info);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
@ -1556,9 +1474,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
INIT_ASM_INFO();
|
||||
info.pszCurrentAssemblyPathBuf = NULL;
|
||||
info.cchBuf = 0;
|
||||
lstrcpyW(name, wine);
|
||||
lstrcatW(name, commasep);
|
||||
lstrcatW(name, ver);
|
||||
lstrcpyW(name, L"wine, Version=1.0.0.0");
|
||||
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, name, &info);
|
||||
ok(hr == E_NOT_SUFFICIENT_BUFFER, "Expected E_NOT_SUFFICIENT_BUFFER, got %08x\n", hr);
|
||||
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
|
||||
|
@ -1568,7 +1484,7 @@ static void test_QueryAssemblyInfo(void)
|
|||
|
||||
/* uninstall the assembly from the GAC */
|
||||
disp = 0xf00dbad;
|
||||
hr = IAssemblyCache_UninstallAssembly(cache, 0, wine, NULL, &disp);
|
||||
hr = IAssemblyCache_UninstallAssembly(cache, 0, L"wine", NULL, &disp);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(disp == IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED,
|
||||
"Expected IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED, got %d\n", disp);
|
||||
|
|
|
@ -47,8 +47,6 @@ static BOOL init_functionpointers(void)
|
|||
HMODULE hfusion;
|
||||
HMODULE hmscoree;
|
||||
|
||||
static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
|
||||
|
||||
hmscoree = LoadLibraryA("mscoree.dll");
|
||||
if (!hmscoree)
|
||||
{
|
||||
|
@ -64,7 +62,7 @@ static BOOL init_functionpointers(void)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
|
||||
hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
win_skip("fusion.dll not available\n");
|
||||
|
|
|
@ -48,8 +48,6 @@ static BOOL init_functionpointers(void)
|
|||
HMODULE hfusion;
|
||||
HMODULE hmscoree;
|
||||
|
||||
static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
|
||||
|
||||
hmscoree = LoadLibraryA("mscoree.dll");
|
||||
if (!hmscoree)
|
||||
return FALSE;
|
||||
|
@ -61,7 +59,7 @@ static BOOL init_functionpointers(void)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
|
||||
hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
|
||||
if (FAILED(hr))
|
||||
return FALSE;
|
||||
|
||||
|
@ -400,8 +398,6 @@ static void test_CreateAssemblyNameObject(void)
|
|||
PEKIND arch;
|
||||
HRESULT hr;
|
||||
|
||||
static const WCHAR empty[] = {0};
|
||||
|
||||
/* NULL ppAssemblyNameObj */
|
||||
to_widechar(namestr, "wine.dll");
|
||||
hr = pCreateAssemblyNameObject(NULL, namestr, 0, NULL);
|
||||
|
@ -415,7 +411,7 @@ static void test_CreateAssemblyNameObject(void)
|
|||
|
||||
/* empty szAssemblyName, CANOF_PARSE_DISPLAY_NAME */
|
||||
name = (IAssemblyName *)0xdeadbeef;
|
||||
hr = pCreateAssemblyNameObject(&name, empty, CANOF_PARSE_DISPLAY_NAME, NULL);
|
||||
hr = pCreateAssemblyNameObject(&name, L"", CANOF_PARSE_DISPLAY_NAME, NULL);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
ok(name == (IAssemblyName *)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", name);
|
||||
|
||||
|
@ -459,7 +455,7 @@ static void test_CreateAssemblyNameObject(void)
|
|||
|
||||
/* empty szAssemblyName */
|
||||
name = NULL;
|
||||
hr = pCreateAssemblyNameObject(&name, empty, CANOF_SET_DEFAULT_VALUES, NULL);
|
||||
hr = pCreateAssemblyNameObject(&name, L"", CANOF_SET_DEFAULT_VALUES, NULL);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok(name != NULL, "Expected non-NULL name\n");
|
||||
|
||||
|
@ -1008,27 +1004,13 @@ static void test_CreateAssemblyNameObject(void)
|
|||
|
||||
static void test_IAssemblyName_IsEqual(void)
|
||||
{
|
||||
static const WCHAR wine1[] =
|
||||
{'w','i','n','e',0};
|
||||
static const WCHAR wine2[] =
|
||||
{'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',0};
|
||||
static const WCHAR wine3[] =
|
||||
{'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',',',
|
||||
'c','u','l','t','u','r','e','=','n','e','u','t','r','a','l',0};
|
||||
static const WCHAR wine4[] =
|
||||
{'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',',',
|
||||
'c','u','l','t','u','r','e','=','e','n',0};
|
||||
static const WCHAR wine5[] =
|
||||
{'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',',',
|
||||
'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=','1','2','3','4','5','6',
|
||||
'7','8','9','0','a','b','c','d','e','f',0};
|
||||
HRESULT hr;
|
||||
IAssemblyName *name1, *name2;
|
||||
|
||||
hr = pCreateAssemblyNameObject( &name1, wine1, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name1, L"wine", CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
hr = pCreateAssemblyNameObject( &name2, wine1, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name2, L"wine", CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
if (0) { /* crashes on some old version */
|
||||
|
@ -1046,32 +1028,35 @@ static void test_IAssemblyName_IsEqual(void)
|
|||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
IAssemblyName_Release( name2 );
|
||||
hr = pCreateAssemblyNameObject( &name2, wine2, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name2, L"wine,version=1.0.0.0", CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
IAssemblyName_Release( name2 );
|
||||
hr = pCreateAssemblyNameObject( &name2, wine3, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name2, L"wine,version=1.0.0.0,culture=neutral",
|
||||
CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
IAssemblyName_Release( name1 );
|
||||
hr = pCreateAssemblyNameObject( &name1, wine4, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name1, L"wine,version=1.0.0.0,culture=en",
|
||||
CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
|
||||
ok( hr == S_FALSE, "got %08x\n", hr );
|
||||
|
||||
IAssemblyName_Release( name1 );
|
||||
hr = pCreateAssemblyNameObject( &name1, wine1, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name1, L"wine", CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
IAssemblyName_Release( name2 );
|
||||
hr = pCreateAssemblyNameObject( &name2, wine5, CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
hr = pCreateAssemblyNameObject( &name2, L"wine,version=1.0.0.0,publicKeyToken=1234567890abcdef",
|
||||
CANOF_PARSE_DISPLAY_NAME, NULL );
|
||||
ok( hr == S_OK, "got %08x\n", hr );
|
||||
|
||||
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
|
||||
|
|
|
@ -35,8 +35,6 @@ static BOOL init_functionpointers(void)
|
|||
HRESULT hr;
|
||||
HMODULE hfusion;
|
||||
|
||||
static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
|
||||
|
||||
hmscoree = LoadLibraryA("mscoree.dll");
|
||||
if (!hmscoree)
|
||||
{
|
||||
|
@ -54,7 +52,7 @@ static BOOL init_functionpointers(void)
|
|||
|
||||
pGetCORVersion = (void *)GetProcAddress(hmscoree, "GetCORVersion");
|
||||
|
||||
hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
|
||||
hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
win_skip("fusion.dll not available\n");
|
||||
|
@ -76,11 +74,6 @@ static void test_GetCachePath(void)
|
|||
DWORD size;
|
||||
HRESULT hr;
|
||||
|
||||
static const WCHAR backslash[] = {'\\',0};
|
||||
static const WCHAR nochange[] = {'n','o','c','h','a','n','g','e',0};
|
||||
static const WCHAR assembly[] = {'a','s','s','e','m','b','l','y',0};
|
||||
static const WCHAR gac[] = {'G','A','C',0};
|
||||
|
||||
if (!pGetCachePath)
|
||||
{
|
||||
win_skip("GetCachePath not implemented\n");
|
||||
|
@ -90,10 +83,7 @@ static void test_GetCachePath(void)
|
|||
GetWindowsDirectoryA(windirA, MAX_PATH);
|
||||
MultiByteToWideChar(CP_ACP, 0, windirA, -1, windir, MAX_PATH);
|
||||
lstrcpyW(cachepath, windir);
|
||||
lstrcatW(cachepath, backslash);
|
||||
lstrcatW(cachepath, assembly);
|
||||
lstrcatW(cachepath, backslash);
|
||||
lstrcatW(cachepath, gac);
|
||||
lstrcatW(cachepath, L"\\assembly\\GAC");
|
||||
|
||||
/* NULL pwzCachePath, pcchPath is 0 */
|
||||
size = 0;
|
||||
|
@ -114,31 +104,32 @@ static void test_GetCachePath(void)
|
|||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
|
||||
/* NULL pcchPath */
|
||||
lstrcpyW(path, nochange);
|
||||
lstrcpyW(path, L"nochange");
|
||||
hr = pGetCachePath(ASM_CACHE_GAC, path, NULL);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
ok( !lstrcmpW( nochange, path ), "Expected %s, got %s\n", wine_dbgstr_w(nochange), wine_dbgstr_w(path));
|
||||
ok(!lstrcmpW(L"nochange", path), "Expected %s, got %s\n", wine_dbgstr_w(L"nochange"),
|
||||
wine_dbgstr_w(path));
|
||||
|
||||
/* get the cache path */
|
||||
lstrcpyW(path, nochange);
|
||||
lstrcpyW(path, L"nochange");
|
||||
size = MAX_PATH;
|
||||
hr = pGetCachePath(ASM_CACHE_GAC, path, &size);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
ok( !lstrcmpW( cachepath, path ), "Expected %s, got %s\n", wine_dbgstr_w(cachepath), wine_dbgstr_w(path));
|
||||
|
||||
/* pcchPath has no room for NULL terminator */
|
||||
lstrcpyW(path, nochange);
|
||||
lstrcpyW(path, L"nochange");
|
||||
size = lstrlenW(cachepath);
|
||||
hr = pGetCachePath(ASM_CACHE_GAC, path, &size);
|
||||
ok(hr == E_NOT_SUFFICIENT_BUFFER, "Expected E_NOT_SUFFICIENT_BUFFER, got %08x\n", hr);
|
||||
ok( !lstrcmpW( nochange, path ), "Expected %s, got %s\n", wine_dbgstr_w(nochange), wine_dbgstr_w(path));
|
||||
ok(!lstrcmpW(L"nochange", path), "Expected %s, got %s\n", wine_dbgstr_w(L"nochange"),
|
||||
wine_dbgstr_w(path));
|
||||
|
||||
lstrcpyW(cachepath, windir);
|
||||
lstrcatW(cachepath, backslash);
|
||||
lstrcatW(cachepath, assembly);
|
||||
lstrcatW(cachepath, L"\\assembly");
|
||||
|
||||
/* ASM_CACHE_ROOT */
|
||||
lstrcpyW(path, nochange);
|
||||
lstrcpyW(path, L"nochange");
|
||||
size = MAX_PATH;
|
||||
hr = pGetCachePath(ASM_CACHE_ROOT, path, &size);
|
||||
ok(hr == S_OK ||
|
||||
|
@ -176,7 +167,7 @@ static void test_GetCachePath(void)
|
|||
MultiByteToWideChar(CP_ACP, 0, cachepathA, -1, cachepath, MAX_PATH);
|
||||
|
||||
/* ASM_CACHE_ZAP */
|
||||
lstrcpyW(path, nochange);
|
||||
lstrcpyW(path, L"nochange");
|
||||
size = MAX_PATH;
|
||||
hr = pGetCachePath(ASM_CACHE_ZAP, path, &size);
|
||||
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
|
||||
|
@ -184,11 +175,12 @@ static void test_GetCachePath(void)
|
|||
}
|
||||
|
||||
/* two flags at once */
|
||||
lstrcpyW(path, nochange);
|
||||
lstrcpyW(path, L"nochange");
|
||||
size = MAX_PATH;
|
||||
hr = pGetCachePath(ASM_CACHE_GAC | ASM_CACHE_ROOT, path, &size);
|
||||
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
|
||||
ok( !lstrcmpW( nochange, path ), "Expected %s, got %s\n", wine_dbgstr_w(nochange), wine_dbgstr_w(path));
|
||||
ok(!lstrcmpW(L"nochange", path), "Expected %s, got %s\n", wine_dbgstr_w(L"nochange"),
|
||||
wine_dbgstr_w(path));
|
||||
}
|
||||
|
||||
START_TEST(fusion)
|
||||
|
|
Loading…
Reference in New Issue