mirror of
https://github.com/haraldk/TwelveMonkeys.git
synced 2026-05-01 00:00:02 -04:00
#421: Fix for LCMS profile issue, due to LCMS altering the profile header on first use (ie. validation).
This commit is contained in:
+20
-28
@@ -36,6 +36,7 @@ import java.awt.color.ICC_Profile;
|
||||
import java.io.IOException;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import static org.junit.Assume.assumeTrue;
|
||||
|
||||
/**
|
||||
* ColorSpacesTest
|
||||
@@ -45,6 +46,25 @@ import static org.junit.Assert.*;
|
||||
* @version $Id: ColorSpacesTest.java,v 1.0 07.02.11 14.32 haraldk Exp$
|
||||
*/
|
||||
public class ColorSpacesTest {
|
||||
@Test
|
||||
public void testAdobeRGB98AlwaysSame() {
|
||||
ColorSpace cs = ColorSpaces.getColorSpace(ColorSpaces.CS_ADOBE_RGB_1998);
|
||||
assertSame(cs, ColorSpaces.getColorSpace(ColorSpaces.CS_ADOBE_RGB_1998));
|
||||
|
||||
assertTrue(cs instanceof ICC_ColorSpace);
|
||||
ICC_ColorSpace iccCs = (ICC_ColorSpace) cs;
|
||||
assertSame(cs, ColorSpaces.createColorSpace(iccCs.getProfile()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCMYKAlwaysSame() {
|
||||
ColorSpace cs = ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK);
|
||||
assertSame(cs, ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK));
|
||||
|
||||
assumeTrue(cs instanceof ICC_ColorSpace); // NOTE: Ignores test on systems without CMYK profile
|
||||
ICC_ColorSpace iccCs = (ICC_ColorSpace) cs;
|
||||
assertSame(cs, ColorSpaces.createColorSpace(iccCs.getProfile()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCreateColorSpaceFromKnownProfileReturnsInternalCS_sRGB() {
|
||||
@@ -134,20 +154,6 @@ public class ColorSpacesTest {
|
||||
assertEquals(ColorSpace.TYPE_RGB, ColorSpaces.getColorSpace(ColorSpaces.CS_ADOBE_RGB_1998).getType());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAdobeRGB98AlwaysSame() {
|
||||
ColorSpace cs = ColorSpaces.getColorSpace(ColorSpaces.CS_ADOBE_RGB_1998);
|
||||
assertSame(cs, ColorSpaces.getColorSpace(ColorSpaces.CS_ADOBE_RGB_1998));
|
||||
|
||||
if (cs instanceof ICC_ColorSpace) {
|
||||
ICC_ColorSpace iccCs = (ICC_ColorSpace) cs;
|
||||
assertSame(cs, ColorSpaces.createColorSpace(iccCs.getProfile()));
|
||||
}
|
||||
else {
|
||||
System.err.println("WARNING: Not an ICC_ColorSpace: " + cs);
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCMYKNotNull() {
|
||||
assertNotNull(ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK));
|
||||
@@ -158,20 +164,6 @@ public class ColorSpacesTest {
|
||||
assertEquals(ColorSpace.TYPE_CMYK, ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK).getType());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCMYKAlwaysSame() {
|
||||
ColorSpace cs = ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK);
|
||||
assertSame(cs, ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK));
|
||||
|
||||
if (cs instanceof ICC_ColorSpace) {
|
||||
ICC_ColorSpace iccCs = (ICC_ColorSpace) cs;
|
||||
assertSame(cs, ColorSpaces.createColorSpace(iccCs.getProfile()));
|
||||
}
|
||||
else {
|
||||
System.err.println("Warning: Not an ICC_ColorSpace: " + cs);
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testIsCS_sRGBTrue() {
|
||||
assertTrue(ColorSpaces.isCS_sRGB(ICC_Profile.getInstance(ColorSpace.CS_sRGB)));
|
||||
|
||||
Reference in New Issue
Block a user