d3dx9/tests: Add tests for D3DXCreateCubeTextureFromFileInMemory.
This commit is contained in:
parent
e0f2d4cf91
commit
7f3f5dd1eb
|
@ -739,6 +739,46 @@ static void test_D3DXLoadSurface(IDirect3DDevice9 *device)
|
|||
if(testbitmap_ok) DeleteFileA("testbitmap.bmp");
|
||||
}
|
||||
|
||||
static void test_D3DXCreateCubeTexture(IDirect3DDevice9 *device)
|
||||
{
|
||||
HRESULT hr;
|
||||
ULONG ref;
|
||||
DWORD levelcount;
|
||||
IDirect3DCubeTexture9 *cube_texture;
|
||||
D3DSURFACE_DESC surface_desc;
|
||||
|
||||
todo_wine {
|
||||
hr = D3DXCreateCubeTextureFromFileInMemory(NULL, dds_cube_map, sizeof(dds_cube_map), &cube_texture);
|
||||
ok(hr == D3DERR_INVALIDCALL, "D3DXCreateCubeTextureFromFileInMemory returned %#x, expected %#x\n", hr, D3DERR_INVALIDCALL);
|
||||
|
||||
hr = D3DXCreateCubeTextureFromFileInMemory(device, NULL, sizeof(dds_cube_map), &cube_texture);
|
||||
ok(hr == D3DERR_INVALIDCALL, "D3DXCreateCubeTextureFromFileInMemory returned %#x, expected %#x\n", hr, D3DERR_INVALIDCALL);
|
||||
|
||||
hr = D3DXCreateCubeTextureFromFileInMemory(device, dds_cube_map, 0, &cube_texture);
|
||||
ok(hr == D3DERR_INVALIDCALL, "D3DXCreateCubeTextureFromFileInMemory returned %#x, expected %#x\n", hr, D3DERR_INVALIDCALL);
|
||||
|
||||
hr = D3DXCreateCubeTextureFromFileInMemory(device, dds_cube_map, sizeof(dds_cube_map), NULL);
|
||||
ok(hr == D3DERR_INVALIDCALL, "D3DXCreateCubeTextureFromFileInMemory returned %#x, expected %#x\n", hr, D3DERR_INVALIDCALL);
|
||||
|
||||
hr = D3DXCreateCubeTextureFromFileInMemory(device, dds_cube_map, sizeof(dds_cube_map), &cube_texture);
|
||||
if(SUCCEEDED(hr)) {
|
||||
levelcount = IDirect3DCubeTexture9_GetLevelCount(cube_texture);
|
||||
ok(levelcount == 3, "GetLevelCount returned %u, expected 3\n", levelcount);
|
||||
|
||||
hr = IDirect3DCubeTexture9_GetLevelDesc(cube_texture, 0, &surface_desc);
|
||||
ok(hr == D3D_OK, "GetLevelDesc returned %#x, expected %#x\n", hr, D3D_OK);
|
||||
ok(surface_desc.Width == 4, "Got width %u, expected 4\n", surface_desc.Width);
|
||||
ok(surface_desc.Height == 4, "Got height %u, expected 4\n", surface_desc.Height);
|
||||
|
||||
hr = IDirect3DCubeTexture9_GetLevelDesc(cube_texture, 3, &surface_desc);
|
||||
ok(hr == D3DERR_INVALIDCALL, "GetLevelDesc returned %#x, expected %#x\n", hr, D3DERR_INVALIDCALL);
|
||||
|
||||
ref = IDirect3DCubeTexture9_Release(cube_texture);
|
||||
ok(ref == 0, "Invalid reference count. Got %u, expected 0\n", ref);
|
||||
} else skip("Couldn't create cube texture\n");
|
||||
}
|
||||
}
|
||||
|
||||
START_TEST(surface)
|
||||
{
|
||||
HWND wnd;
|
||||
|
@ -772,6 +812,7 @@ START_TEST(surface)
|
|||
|
||||
test_D3DXGetImageInfo();
|
||||
test_D3DXLoadSurface(device);
|
||||
test_D3DXCreateCubeTexture(device);
|
||||
|
||||
check_release((IUnknown*)device, 0);
|
||||
check_release((IUnknown*)d3d, 0);
|
||||
|
|
Loading…
Reference in New Issue