Henri Verbeet : dxgi/tests: Cleanup test_output().
Alexandre Julliard
julliard at winehq.org
Mon Feb 10 13:06:56 CST 2014
Module: wine
Branch: master
Commit: 19f204437529d42f579581d427655655369c46f3
URL: http://source.winehq.org/git/wine.git/?a=commit;h=19f204437529d42f579581d427655655369c46f3
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Mon Feb 10 10:37:53 2014 +0100
dxgi/tests: Cleanup test_output().
In particular, actually test the return codes for most calls.
---
dlls/dxgi/tests/device.c | 54 +++++++++++++++++++++++++---------------------
1 file changed, 30 insertions(+), 24 deletions(-)
diff --git a/dlls/dxgi/tests/device.c b/dlls/dxgi/tests/device.c
index b8e7b33..ba1a29f 100644
--- a/dlls/dxgi/tests/device.c
+++ b/dlls/dxgi/tests/device.c
@@ -255,44 +255,47 @@ static void test_output(IDXGIDevice *device)
hr = IDXGIAdapter_EnumOutputs(adapter, 0, &output);
if (hr == DXGI_ERROR_NOT_FOUND)
{
- skip("Adapter has not outputs, skipping output tests.\n");
+ skip("Adapter doesn't have any outputs, skipping tests.\n");
IDXGIAdapter_Release(adapter);
return;
}
-
ok(SUCCEEDED(hr), "EnumOutputs failed, hr %#x.\n", hr);
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, 0, NULL, NULL);
- ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, 0, NULL, NULL);
+ todo_wine ok(hr == DXGI_ERROR_INVALID_CALL, "Got unexpected hr %#x.\n", hr);
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, 0, &mode_count, NULL);
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, 0, &mode_count, NULL);
ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
mode_count_comp = mode_count;
- IDXGIOutput_GetDisplayModeList(output, 0, 0, &mode_count, NULL);
+ hr = IDXGIOutput_GetDisplayModeList(output, 0, 0, &mode_count, NULL);
ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(!mode_count, "Expected 0 got %d\n", mode_count);
+ ok(!mode_count, "Got unexpected mode_count %u.\n", mode_count);
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_ENUM_MODES_SCALING, &mode_count, NULL);
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM,
+ DXGI_ENUM_MODES_SCALING, &mode_count, NULL);
ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(mode_count >= mode_count_comp, "Flag implies trying to enumerate more modes\n");
+ ok(mode_count >= mode_count_comp, "Got unexpected mode_count %u, expected >= %u.\n", mode_count, mode_count_comp);
mode_count_comp = mode_count;
- modes = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(DXGI_MODE_DESC) * mode_count+10);
+ modes = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*modes) * (mode_count + 10));
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_ENUM_MODES_SCALING, NULL, modes);
- ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(!modes[0].Height, "No output was expected\n");
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM,
+ DXGI_ENUM_MODES_SCALING, NULL, modes);
+ todo_wine ok(hr == DXGI_ERROR_INVALID_CALL, "Got unexpected hr %#x.\n", hr);
+ ok(!modes[0].Height, "No output was expected.\n");
mode_count = 0;
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_ENUM_MODES_SCALING, &mode_count, modes);
- ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(!modes[0].Height, "No output was expected\n");
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM,
+ DXGI_ENUM_MODES_SCALING, &mode_count, modes);
+ todo_wine ok(hr == DXGI_ERROR_MORE_DATA, "Got unexpected hr %#x.\n", hr);
+ ok(!modes[0].Height, "No output was expected.\n");
mode_count = mode_count_comp;
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_ENUM_MODES_SCALING, &mode_count, modes);
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM,
+ DXGI_ENUM_MODES_SCALING, &mode_count, modes);
ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(mode_count == mode_count_comp, "Expected %d, got %d\n", mode_count_comp, mode_count);
+ ok(mode_count == mode_count_comp, "Got unexpected mode_count %u, expected %u.\n", mode_count, mode_count_comp);
for (i = 0; i < mode_count; i++)
{
@@ -300,20 +303,23 @@ static void test_output(IDXGIDevice *device)
}
mode_count += 5;
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_ENUM_MODES_SCALING, &mode_count, modes);
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM,
+ DXGI_ENUM_MODES_SCALING, &mode_count, modes);
ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(mode_count == mode_count_comp, "Expected %d, got %d\n", mode_count_comp, mode_count);
+ ok(mode_count == mode_count_comp, "Got unexpected mode_count %u, expected %u.\n", mode_count, mode_count_comp);
if (mode_count_comp)
{
mode_count = mode_count_comp - 1;
- IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_ENUM_MODES_SCALING, &mode_count, modes);
- ok(SUCCEEDED(hr), "Failed to list modes, hr %#x.\n", hr);
- ok(mode_count == mode_count_comp -1, "Expected %d, got %d\n", mode_count_comp, mode_count);
+ hr = IDXGIOutput_GetDisplayModeList(output, DXGI_FORMAT_R8G8B8A8_UNORM,
+ DXGI_ENUM_MODES_SCALING, &mode_count, modes);
+ todo_wine ok(hr == DXGI_ERROR_MORE_DATA, "Got unexpected hr %#x.\n", hr);
+ ok(mode_count == mode_count_comp - 1, "Got unexpected mode_count %u, expected %u.\n",
+ mode_count, mode_count_comp - 1);
}
else
{
- skip("Not enough modes for test, skipping\n");
+ skip("Not enough modes for test, skipping.\n");
}
HeapFree(GetProcessHeap(), 0, modes);
More information about the wine-cvs
mailing list