Hans Leidekker : mscms: Add tests for EnumColorProfiles{A,W}.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Mar 8 06:08:32 CST 2006


Module: wine
Branch: refs/heads/master
Commit: 1d491aedba0b28f984f921568a84667745b0745e
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=1d491aedba0b28f984f921568a84667745b0745e

Author: Hans Leidekker <hans at it.vu.nl>
Date:   Tue Mar  7 16:52:35 2006 +0100

mscms: Add tests for EnumColorProfiles{A,W}.

---

 dlls/mscms/tests/profile.c |  105 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 104 insertions(+), 1 deletions(-)

diff --git a/dlls/mscms/tests/profile.c b/dlls/mscms/tests/profile.c
index 8c7d0aa..0e30f1e 100644
--- a/dlls/mscms/tests/profile.c
+++ b/dlls/mscms/tests/profile.c
@@ -1,7 +1,7 @@
 /*
  * Tests for color profile functions
  *
- * Copyright 2004, 2005 Hans Leidekker
+ * Copyright 2004, 2005, 2006 Hans Leidekker
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -42,6 +42,8 @@ static BOOL     (WINAPI *pGetColorProfil
 static BOOL     (WINAPI *pGetCountColorProfileElements)(HPROFILE,PDWORD);
 static BOOL     (WINAPI *pGetStandardColorSpaceProfileA)(PCSTR,DWORD,PSTR,PDWORD);
 static BOOL     (WINAPI *pGetStandardColorSpaceProfileW)(PCWSTR,DWORD,PWSTR,PDWORD);
+static BOOL     (WINAPI *pEnumColorProfilesA)(PCSTR,PENUMTYPEA,PBYTE,PDWORD,PDWORD);
+static BOOL     (WINAPI *pEnumColorProfilesW)(PCWSTR,PENUMTYPEW,PBYTE,PDWORD,PDWORD);
 static BOOL     (WINAPI *pInstallColorProfileA)(PCSTR,PCSTR);
 static BOOL     (WINAPI *pInstallColorProfileW)(PCWSTR,PCWSTR);
 static BOOL     (WINAPI *pIsColorProfileTagPresent)(HPROFILE,TAGTYPE,PBOOL);
@@ -69,6 +71,8 @@ static BOOL init_function_ptrs( void )
     GETFUNCPTR( GetCountColorProfileElements )
     GETFUNCPTR( GetStandardColorSpaceProfileA )
     GETFUNCPTR( GetStandardColorSpaceProfileW )
+    GETFUNCPTR( EnumColorProfilesA )
+    GETFUNCPTR( EnumColorProfilesW )
     GETFUNCPTR( InstallColorProfileA )
     GETFUNCPTR( InstallColorProfileW )
     GETFUNCPTR( IsColorProfileTagPresent )
@@ -701,6 +705,102 @@ static void test_GetStandardColorSpacePr
     }
 }
 
+static void test_EnumColorProfilesA(void)
+{
+    BOOL ret;
+    DWORD size, number;
+    ENUMTYPEA record;
+    BYTE buffer[MAX_PATH];
+
+    /* Parameter checks */
+
+    size = sizeof(buffer);
+    memset( &record, 0, sizeof(ENUMTYPEA) );
+
+    record.dwSize = sizeof(ENUMTYPEA);
+    record.dwVersion = ENUM_TYPE_VERSION;
+    record.dwFields |= ET_DATACOLORSPACE;
+    record.dwDataColorSpace = SPACE_RGB;
+
+    ret = pEnumColorProfilesA( machine, &record, buffer, &size, &number );
+    ok( !ret, "EnumColorProfilesA() succeeded (%ld)\n", GetLastError() );
+
+    ret = pEnumColorProfilesA( NULL, NULL, buffer, &size, &number );
+    ok( !ret, "EnumColorProfilesA() succeeded (%ld)\n", GetLastError() );
+
+    ret = pEnumColorProfilesA( NULL, &record, buffer, NULL, &number );
+    ok( !ret, "EnumColorProfilesA() succeeded (%ld)\n", GetLastError() );
+
+    if (standardprofile)
+    {
+        ret = pEnumColorProfilesA( NULL, &record, buffer, &size, &number );
+        ok( ret, "EnumColorProfilesA() failed (%ld)\n", GetLastError() );
+    }
+
+    size = 0;
+
+    ret = pEnumColorProfilesA( NULL, &record, buffer, &size, &number );
+    ok( !ret, "EnumColorProfilesA() succeeded (%ld)\n", GetLastError() );
+
+    /* Functional checks */
+
+    if (standardprofile)
+    {
+        size = sizeof(buffer);
+
+        ret = pEnumColorProfilesA( NULL, &record, buffer, &size, &number );
+        ok( ret, "EnumColorProfilesA() failed (%ld)\n", GetLastError() );
+    }
+}
+
+static void test_EnumColorProfilesW(void)
+{
+    BOOL ret;
+    DWORD size, number;
+    ENUMTYPEW record;
+    BYTE buffer[MAX_PATH * sizeof(WCHAR)];
+
+    /* Parameter checks */
+
+    size = sizeof(buffer);
+    memset( &record, 0, sizeof(ENUMTYPEW) );
+
+    record.dwSize = sizeof(ENUMTYPEW);
+    record.dwVersion = ENUM_TYPE_VERSION;
+    record.dwFields |= ET_DATACOLORSPACE;
+    record.dwDataColorSpace = SPACE_RGB;
+
+    ret = pEnumColorProfilesW( machineW, &record, buffer, &size, &number );
+    ok( !ret, "EnumColorProfilesW() succeeded (%ld)\n", GetLastError() );
+
+    ret = pEnumColorProfilesW( NULL, NULL, buffer, &size, &number );
+    ok( !ret, "EnumColorProfilesW() succeeded (%ld)\n", GetLastError() );
+
+    ret = pEnumColorProfilesW( NULL, &record, buffer, NULL, &number );
+    ok( !ret, "EnumColorProfilesW() succeeded (%ld)\n", GetLastError() );
+
+    if (standardprofileW)
+    {
+        ret = pEnumColorProfilesW( NULL, &record, buffer, &size, NULL );
+        ok( ret, "EnumColorProfilesW() failed (%ld)\n", GetLastError() );
+    }
+
+    size = 0;
+
+    ret = pEnumColorProfilesW( NULL, &record, buffer, &size, &number );
+    ok( !ret, "EnumColorProfilesW() succeeded (%ld)\n", GetLastError() );
+
+    /* Functional checks */
+
+    if (standardprofileW)
+    {
+        size = sizeof(buffer);
+
+        ret = pEnumColorProfilesW( NULL, &record, buffer, &size, &number );
+        ok( ret, "EnumColorProfilesW() failed (%ld)\n", GetLastError() );
+    }
+}
+
 static void test_InstallColorProfileA(void)
 {
     BOOL ret;
@@ -1250,6 +1350,9 @@ START_TEST(profile)
     test_GetStandardColorSpaceProfileA();
     test_GetStandardColorSpaceProfileW();
 
+    test_EnumColorProfilesA();
+    test_EnumColorProfilesW();
+
     test_InstallColorProfileA();
     test_InstallColorProfileW();
 




More information about the wine-cvs mailing list