gdi32: Add tests for GetICMProfile and SetICMMode.

Detlef Riekenberg wine.dev at web.de
Mon Jan 21 18:25:45 CST 2008


On Mo, 2008-01-21 at 16:33 +0100, Hans Leidekker wrote:
> 
> +static void test_GetICMProfileA( HDC dc )

Please check GetLastError() as much as possible
(Add comments, when GetLastError() does not return something usable


> +    size = MAX_PATH;
> +    ret = GetICMProfileA( dc, &size, NULL );
> +    ok( !ret, "GetICMProfileA succeeded\n" );

This is different from GetICMProfileW and MSDN.
Please add a comment.

> +    size = 0;
> +    SetLastError(0xdeadbeef);
> +    ret = GetICMProfileA( dc, &size, filename );
> +    error = GetLastError();
> +    ok( !ret, "GetICMProfileA succeeded\n" );
> +    ok( size, "expected size > 0\n" );
> +    ok( error == ERROR_INSUFFICIENT_BUFFER, "got %d, expected
> ERROR_INSUFFICIENT_BUFFER\n", error );

what are the advantages compared to one test for all?

  ok ( !ret && (GetLastError() == ERROR_INSUFFICIENT_BUFFER) &&
       (size > 0), 
       "got %u with %u and size %d (expected '0' with "
       "ERROR_INSUFFICIENT_BUFFER and '> 0'\n",
       ret, GetLastError(), size);

> +    size = MAX_PATH;
> +    ret = GetICMProfileA( dc, &size, filename );
> +    ok( ret, "GetICMProfileA failed %d\n", GetLastError() );

Does the size include the terminating '\0'?
what about tests with:
size == needed_size -1
size == needed_size
size == needed_size +1



I'm unable to test your Patch now. will try to do it tomorrow.


-- 
 
By by ... Detlef





More information about the wine-devel mailing list