/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.core.image.filter.effect; import java.awt.image.BufferedImage; import org.junit.Test; import com.enonic.cms.core.image.filter.AwtImageFilter; import com.enonic.cms.core.image.filter.AwtImageFilterTest; import com.enonic.cms.core.image.filter.ImageFilter; import static org.junit.Assert.*; public class SepiaFilterTest extends AwtImageFilterTest { @Test public void testOpaqueImage() { java.awt.image.ImageFilter operation = new SepiaFilter( 20 ); ImageFilter filter = new AwtImageFilter( operation ); BufferedImage result = filter.filter( getOpaque() ); int rgb = result.getRGB( 10, 10 ); int alpha = ( rgb >> 24 ) & 0xff; assertEquals( 255, alpha ); rgb = result.getRGB( 20, 20 ); alpha = ( rgb >> 24 ) & 0xff; assertEquals( 255, alpha ); } @Test public void testImageWithTransparentAreas() { java.awt.image.ImageFilter operation = new SepiaFilter( 20 ); ImageFilter filter = new AwtImageFilter( operation ); BufferedImage result = filter.filter( getTransparent() ); // Uppder left corner is transparent int rgb = result.getRGB( 10, 10 ); int alpha = ( rgb >> 24 ) & 0xff; assertEquals( 0, alpha ); rgb = result.getRGB( 20, 20 ); alpha = ( rgb >> 24 ) & 0xff; assertEquals( 0, alpha ); // Further down, there are opaque pixels. rgb = result.getRGB( 35, 35 ); alpha = ( rgb >> 24 ) & 0xff; assertEquals( 255, alpha ); } }