Hans Leidekker : mscms: Add tests for AssociateColorProfileWithDevice and DisassociateColorProfileFromDevice .

Alexandre Julliard julliard at winehq.org
Mon Feb 25 06:50:53 CST 2008


Module: wine
Branch: master
Commit: dbdf9278e8f826dacbf59f767f9dad6706f52e3e
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=dbdf9278e8f826dacbf59f767f9dad6706f52e3e

Author: Hans Leidekker <hans at it.vu.nl>
Date:   Fri Feb 22 14:24:59 2008 +0100

mscms: Add tests for AssociateColorProfileWithDevice and DisassociateColorProfileFromDevice.

---

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

diff --git a/dlls/mscms/tests/profile.c b/dlls/mscms/tests/profile.c
index 5e5dbab..d7e1f6a 100644
--- a/dlls/mscms/tests/profile.c
+++ b/dlls/mscms/tests/profile.c
@@ -32,7 +32,9 @@
 
 HMODULE hmscms;
 
+static BOOL     (WINAPI *pAssociateColorProfileWithDeviceA)(PCSTR,PCSTR,PCSTR);
 static BOOL     (WINAPI *pCloseColorProfile)(HPROFILE);
+static BOOL     (WINAPI *pDisassociateColorProfileFromDeviceA)(PCSTR,PCSTR,PCSTR);
 static BOOL     (WINAPI *pGetColorDirectoryA)(PCHAR,PCHAR,PDWORD);
 static BOOL     (WINAPI *pGetColorDirectoryW)(PWCHAR,PWCHAR,PDWORD);
 static BOOL     (WINAPI *pGetColorProfileElement)(HPROFILE,TAGTYPE,DWORD,PDWORD,PVOID,PBOOL);
@@ -61,7 +63,9 @@ static BOOL     (WINAPI *pUninstallColorProfileW)(PCWSTR,PCWSTR,BOOL);
 
 static BOOL init_function_ptrs( void )
 {
+    GETFUNCPTR( AssociateColorProfileWithDeviceA )
     GETFUNCPTR( CloseColorProfile )
+    GETFUNCPTR( DisassociateColorProfileFromDeviceA )
     GETFUNCPTR( GetColorDirectoryA )
     GETFUNCPTR( GetColorDirectoryW )
     GETFUNCPTR( GetColorProfileElement )
@@ -1353,6 +1357,71 @@ static void test_UninstallColorProfileW(void)
     }
 }
 
+static void test_AssociateColorProfileWithDeviceA(void)
+{
+    BOOL ret;
+    char profile[MAX_PATH], basename[MAX_PATH];
+    DWORD error, size = sizeof(profile);
+
+    if (testprofile)
+    {
+        SetLastError(0xdeadbeef);
+        ret = pAssociateColorProfileWithDeviceA( "machine", testprofile, NULL );
+        error = GetLastError();
+        ok( !ret, "AssociateColorProfileWithDevice() succeeded\n" );
+        ok( error == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %u\n", error );
+
+        SetLastError(0xdeadbeef);
+        ret = pAssociateColorProfileWithDeviceA( "machine", NULL, "DISPLAY" );
+        error = GetLastError();
+        ok( !ret, "AssociateColorProfileWithDevice() succeeded\n" );
+        ok( error == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %u\n", error );
+
+        SetLastError(0xdeadbeef);
+        ret = pAssociateColorProfileWithDeviceA( "machine", testprofile, "DISPLAY" );
+        error = GetLastError();
+        ok( !ret, "AssociateColorProfileWithDevice() succeeded\n" );
+        ok( error == ERROR_NOT_SUPPORTED, "expected ERROR_NOT_SUPPORTED, got %u\n", error );
+
+        ret = pInstallColorProfileA( NULL, testprofile );
+        ok( ret, "InstallColorProfileA() failed (%u)\n", GetLastError() );
+
+        ret = pGetColorDirectoryA( NULL, profile, &size );
+        ok( ret, "GetColorDirectoryA() failed (%d)\n", GetLastError() );
+
+        MSCMS_basenameA( testprofile, basename );
+        lstrcatA( profile, "\\" );
+        lstrcatA( profile, basename );
+
+        ret = pAssociateColorProfileWithDeviceA( NULL, profile, "DISPLAY" );
+        ok( ret, "AssociateColorProfileWithDevice() failed (%u)\n", GetLastError() );
+
+        SetLastError(0xdeadbeef);
+        ret = pDisassociateColorProfileFromDeviceA( "machine", profile, NULL );
+        error = GetLastError();
+        ok( !ret, "DisassociateColorProfileFromDeviceA() succeeded\n" );
+        ok( error == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %u\n", error );
+
+        SetLastError(0xdeadbeef);
+        ret = pDisassociateColorProfileFromDeviceA( "machine", NULL, "DISPLAY" );
+        error = GetLastError();
+        ok( !ret, "DisassociateColorProfileFromDeviceA() succeeded\n" );
+        ok( error == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %u\n", error );
+
+        SetLastError(0xdeadbeef);
+        ret = pDisassociateColorProfileFromDeviceA( "machine", profile, "DISPLAY" );
+        error = GetLastError();
+        ok( !ret, "DisassociateColorProfileFromDeviceA() succeeded\n" );
+        ok( error == ERROR_NOT_SUPPORTED, "expected ERROR_NOT_SUPPORTED, got %u\n", error );
+
+        ret = pDisassociateColorProfileFromDeviceA( NULL, profile, "DISPLAY" );
+        ok( ret, "DisassociateColorProfileFromDeviceA() failed (%u)\n", GetLastError() );
+
+        ret = pUninstallColorProfileA( NULL, profile, TRUE );
+        ok( ret, "UninstallColorProfileW() failed (%d)\n", GetLastError() );
+    }
+}
+
 START_TEST(profile)
 {
     UINT len;
@@ -1457,6 +1526,8 @@ START_TEST(profile)
     test_UninstallColorProfileA();
     test_UninstallColorProfileW();
 
+    test_AssociateColorProfileWithDeviceA();
+
     /* Clean up */
     if (testprofile)
         DeleteFileA( testprofile );




More information about the wine-cvs mailing list