fusion/tests: Skip tests when file creation fails.
This commit is contained in:
parent
66395882f8
commit
efaa801361
|
@ -147,13 +147,15 @@ static BOOL create_full_path(LPCSTR path)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void create_file_data(LPCSTR name, LPCSTR data, DWORD size)
|
static BOOL create_file_data(LPCSTR name, LPCSTR data, DWORD size)
|
||||||
{
|
{
|
||||||
HANDLE file;
|
HANDLE file;
|
||||||
DWORD written;
|
DWORD written;
|
||||||
|
|
||||||
file = CreateFileA(name, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL);
|
file = CreateFileA(name, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL);
|
||||||
ok(file != INVALID_HANDLE_VALUE, "Failure to open file %s\n", name);
|
if (file == INVALID_HANDLE_VALUE)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
WriteFile(file, data, strlen(data), &written, NULL);
|
WriteFile(file, data, strlen(data), &written, NULL);
|
||||||
|
|
||||||
if (size)
|
if (size)
|
||||||
|
@ -163,10 +165,9 @@ static void create_file_data(LPCSTR name, LPCSTR data, DWORD size)
|
||||||
}
|
}
|
||||||
|
|
||||||
CloseHandle(file);
|
CloseHandle(file);
|
||||||
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define create_file(name, size) create_file_data(name, name, size)
|
|
||||||
|
|
||||||
static void test_CreateAssemblyEnum(void)
|
static void test_CreateAssemblyEnum(void)
|
||||||
{
|
{
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
@ -409,19 +410,31 @@ static void test_enumerate_name(void)
|
||||||
CreateDirectoryA(path, NULL);
|
CreateDirectoryA(path, NULL);
|
||||||
|
|
||||||
lstrcatA(path, "\\Wine.dll");
|
lstrcatA(path, "\\Wine.dll");
|
||||||
create_file(path, 100);
|
if (!create_file_data(path, path, 100))
|
||||||
|
{
|
||||||
|
win_skip("Failed to open file %s, skipping name enumeration tests\n", path);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
sprintf(path, "%s\\Wine\\1.0.1.2__16a3fcd171e93a8d", gac);
|
sprintf(path, "%s\\Wine\\1.0.1.2__16a3fcd171e93a8d", gac);
|
||||||
CreateDirectoryA(path, NULL);
|
CreateDirectoryA(path, NULL);
|
||||||
|
|
||||||
lstrcatA(path, "\\Wine.dll");
|
lstrcatA(path, "\\Wine.dll");
|
||||||
create_file(path, 100);
|
if (!create_file_data(path, path, 100))
|
||||||
|
{
|
||||||
|
win_skip("Failed to open file %s, skipping name enumeration tests\n", path);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
sprintf(path, "%s\\Wine\\1.0.1.2__123456789abcdef0", gac);
|
sprintf(path, "%s\\Wine\\1.0.1.2__123456789abcdef0", gac);
|
||||||
CreateDirectoryA(path, NULL);
|
CreateDirectoryA(path, NULL);
|
||||||
|
|
||||||
lstrcatA(path, "\\Wine.dll");
|
lstrcatA(path, "\\Wine.dll");
|
||||||
create_file(path, 100);
|
if (!create_file_data(path, path, 100))
|
||||||
|
{
|
||||||
|
win_skip("Failed to open file %s, skipping name enumeration tests\n", path);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
/* test case sensitivity */
|
/* test case sensitivity */
|
||||||
to_widechar(namestr, "wine");
|
to_widechar(namestr, "wine");
|
||||||
|
@ -650,6 +663,7 @@ static void test_enumerate_name(void)
|
||||||
IAssemblyEnum_Release(asmenum);
|
IAssemblyEnum_Release(asmenum);
|
||||||
IAssemblyName_Release(asmname);
|
IAssemblyName_Release(asmname);
|
||||||
|
|
||||||
|
done:
|
||||||
sprintf(path, "%s\\Wine\\1.0.0.0__16a3fcd171e93a8d\\Wine.dll", gac);
|
sprintf(path, "%s\\Wine\\1.0.0.0__16a3fcd171e93a8d\\Wine.dll", gac);
|
||||||
DeleteFileA(path);
|
DeleteFileA(path);
|
||||||
sprintf(path, "%s\\Wine\\1.0.1.2__16a3fcd171e93a8d\\Wine.dll", gac);
|
sprintf(path, "%s\\Wine\\1.0.1.2__16a3fcd171e93a8d\\Wine.dll", gac);
|
||||||
|
|
Loading…
Reference in New Issue