mirror of
git://source.winehq.org/git/wine.git
synced 2024-11-01 09:50:52 +00:00
ddraw/tests: Add more tests for mipmap surface creation flags.
This commit is contained in:
parent
1cea45a183
commit
df8c73e906
4 changed files with 68 additions and 16 deletions
|
@ -6280,12 +6280,18 @@ static void test_mipmap(void)
|
|||
}
|
||||
tests[] =
|
||||
{
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS, 0},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_MIPMAP | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 1},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS, 0},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 6},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 32, 64, 0, DD_OK, 6},
|
||||
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 1, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 3, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS},
|
||||
};
|
||||
|
||||
window = create_window();
|
||||
|
@ -6317,10 +6323,17 @@ static void test_mipmap(void)
|
|||
if (tests[i].flags & DDSD_MIPMAPCOUNT)
|
||||
U2(surface_desc).dwMipMapCount = tests[i].mipmap_count_in;
|
||||
hr = IDirectDraw_CreateSurface(ddraw, &surface_desc, &surface, NULL);
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
todo_wine_if (i == 1 || i == 4 || i == 7 || i == 8)
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
if (FAILED(hr))
|
||||
continue;
|
||||
|
||||
if (FAILED(tests[i].hr))
|
||||
{
|
||||
IDirectDrawSurface_Release(surface);
|
||||
continue;
|
||||
}
|
||||
|
||||
memset(&surface_desc, 0, sizeof(surface_desc));
|
||||
surface_desc.dwSize = sizeof(surface_desc);
|
||||
hr = IDirectDrawSurface_GetSurfaceDesc(surface, &surface_desc);
|
||||
|
|
|
@ -7409,12 +7409,18 @@ static void test_mipmap(void)
|
|||
}
|
||||
tests[] =
|
||||
{
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS, 0},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_MIPMAP | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 1},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS, 0},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 6},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 32, 64, 0, DD_OK, 6},
|
||||
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 1, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 3, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS},
|
||||
};
|
||||
|
||||
window = create_window();
|
||||
|
@ -7446,10 +7452,17 @@ static void test_mipmap(void)
|
|||
if (tests[i].flags & DDSD_MIPMAPCOUNT)
|
||||
U2(surface_desc).dwMipMapCount = tests[i].mipmap_count_in;
|
||||
hr = IDirectDraw2_CreateSurface(ddraw, &surface_desc, &surface1, NULL);
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
todo_wine_if (i == 1 || i == 4 || i == 7 || i == 8)
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
if (FAILED(hr))
|
||||
continue;
|
||||
|
||||
if (FAILED(tests[i].hr))
|
||||
{
|
||||
IDirectDrawSurface_Release(surface);
|
||||
continue;
|
||||
}
|
||||
|
||||
hr = IDirectDrawSurface_QueryInterface(surface1, &IID_IDirectDrawSurface2, (void **)&surface);
|
||||
ok(SUCCEEDED(hr), "Test %u: Failed to get IDirectDrawSurface2 interface, hr %#lx.\n", i, hr);
|
||||
IDirectDrawSurface_Release(surface1);
|
||||
|
|
|
@ -9310,12 +9310,18 @@ static void test_mipmap(void)
|
|||
}
|
||||
tests[] =
|
||||
{
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS, 0},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_MIPMAP | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 1},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS, 0},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 6},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 32, 64, 0, DD_OK, 6},
|
||||
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 1, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 3, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS},
|
||||
};
|
||||
|
||||
window = create_window();
|
||||
|
@ -9347,10 +9353,17 @@ static void test_mipmap(void)
|
|||
if (tests[i].flags & DDSD_MIPMAPCOUNT)
|
||||
U2(surface_desc).dwMipMapCount = tests[i].mipmap_count_in;
|
||||
hr = IDirectDraw4_CreateSurface(ddraw, &surface_desc, &surface, NULL);
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
todo_wine_if (i == 1 || i == 4 || i == 7 || i == 8)
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
if (FAILED(hr))
|
||||
continue;
|
||||
|
||||
if (FAILED(tests[i].hr))
|
||||
{
|
||||
IDirectDrawSurface4_Release(surface);
|
||||
continue;
|
||||
}
|
||||
|
||||
memset(&surface_desc, 0, sizeof(surface_desc));
|
||||
surface_desc.dwSize = sizeof(surface_desc);
|
||||
hr = IDirectDrawSurface4_GetSurfaceDesc(surface, &surface_desc);
|
||||
|
|
|
@ -9153,12 +9153,18 @@ static void test_mipmap(void)
|
|||
}
|
||||
tests[] =
|
||||
{
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS, 0},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_MIPMAP | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 1},
|
||||
{0, DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDCAPS, 0},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX, 128, 32, 0, DDERR_INVALIDCAPS},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DD_OK, 8},
|
||||
{0, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 32, 64, 0, DD_OK, 7},
|
||||
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 1, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_MIPMAP, 128, 32, 3, DDERR_INVALIDCAPS},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 3, DD_OK, 3},
|
||||
{DDSD_MIPMAPCOUNT, DDSCAPS_TEXTURE | DDSCAPS_COMPLEX | DDSCAPS_MIPMAP, 128, 32, 0, DDERR_INVALIDPARAMS},
|
||||
};
|
||||
|
||||
window = create_window();
|
||||
|
@ -9191,10 +9197,17 @@ static void test_mipmap(void)
|
|||
if (tests[i].flags & DDSD_MIPMAPCOUNT)
|
||||
U2(surface_desc).dwMipMapCount = tests[i].mipmap_count_in;
|
||||
hr = IDirectDraw7_CreateSurface(ddraw, &surface_desc, &surface, NULL);
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
todo_wine_if (i == 1 || i == 4 || i == 7 || i == 8)
|
||||
ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#lx.\n", i, hr);
|
||||
if (FAILED(hr))
|
||||
continue;
|
||||
|
||||
if (FAILED(tests[i].hr))
|
||||
{
|
||||
IDirectDrawSurface7_Release(surface);
|
||||
continue;
|
||||
}
|
||||
|
||||
memset(&surface_desc, 0, sizeof(surface_desc));
|
||||
surface_desc.dwSize = sizeof(surface_desc);
|
||||
hr = IDirectDrawSurface7_GetSurfaceDesc(surface, &surface_desc);
|
||||
|
|
Loading…
Reference in a new issue