package org.jwildfire.transform; import org.junit.Assert; import org.junit.Test; import org.jwildfire.swing.Buffer.BufferType; import org.jwildfire.transform.FlipTransformer.Axis; import org.jwildfire.transform.FlipTransformer.AxisEditor; public class FlipTransformerTest { @Test public void testFlipTransformerX() throws Exception { //should blue stripe on the right TestTransformerFrame jf = new TestTransformerFrame(); if(TestTransformerFrame.live) { Thread.sleep(500); } FlipTransformer t = new FlipTransformer(); FlipTransformer.AxisEditor ed = new AxisEditor(); Assert.assertEquals(Axis.X,ed.getValue()); t.initDefaultParams(jf.si); t.setAxis(Axis.X); Assert.assertTrue(t.acceptsInputBufferType(BufferType.IMAGE)); Assert.assertFalse(t.acceptsInputBufferType(BufferType.HDR_IMAGE)); Assert.assertEquals("X",t.getAxis().name()); //Transformer generic Assert.assertTrue(t.allowShowStats()); Assert.assertTrue(t.getOutputMesh3D(false)==null); Assert.assertFalse(t.supports3DOutput()); Assert.assertEquals(BufferType.IMAGE,t.getBufferType()); t.setStoreMesh3D(false); t.initTransformation(jf.si); t.performImageTransformation(jf.si); if(TestTransformerFrame.live) { jf.pack(); Thread.sleep(2000); } jf.dispose(); } @Test public void testFlipTransformerY() throws Exception { //should top stripe on the bottom TestTransformerFrame jf = new TestTransformerFrame(); for(int j=0;j<50;j++) { for(int i=0;i<500;i++) { jf.si.setRGB(i,j,0,0,255); jf.si.setARGB(i,j, 50,0,0,255);//set alpha channel on left band to 50 } } if(TestTransformerFrame.live) { Thread.sleep(500); } FlipTransformer t = new FlipTransformer(); t.initDefaultParams(jf.si); t.setAxis(Axis.Y); Assert.assertTrue(t.acceptsInputBufferType(BufferType.IMAGE)); Assert.assertFalse(t.acceptsInputBufferType(BufferType.HDR_IMAGE)); Assert.assertEquals("Y",t.getAxis().name()); //Transformer generic Assert.assertTrue(t.allowShowStats()); Assert.assertTrue(t.getOutputMesh3D(false)==null); Assert.assertFalse(t.supports3DOutput()); Assert.assertEquals(BufferType.IMAGE,t.getBufferType()); t.setStoreMesh3D(false); t.initTransformation(jf.si); t.performImageTransformation(jf.si); jf.pack(); if(TestTransformerFrame.live) { Thread.sleep(2000); } jf.dispose(); } @Test public void testFlipTransformerXY() throws Exception { //should blue stripe on the right TestTransformerFrame jf = new TestTransformerFrame(); for(int j=0;j<50;j++) { for(int i=0;i<250;i++) { jf.si.setRGB(i,j,0,0,255); jf.si.setARGB(i,j, 50,0,0,255);//set alpha channel on left band to 50 } } if(TestTransformerFrame.live) { Thread.sleep(500); } FlipTransformer t = new FlipTransformer(); t.initDefaultParams(jf.si); t.setAxis(Axis.XY); Assert.assertTrue(t.acceptsInputBufferType(BufferType.IMAGE)); Assert.assertFalse(t.acceptsInputBufferType(BufferType.HDR_IMAGE)); Assert.assertEquals("XY",t.getAxis().name()); //Transformer generic Assert.assertTrue(t.allowShowStats()); Assert.assertTrue(t.getOutputMesh3D(false)==null); Assert.assertFalse(t.supports3DOutput()); Assert.assertEquals(BufferType.IMAGE,t.getBufferType()); t.setStoreMesh3D(false); t.initTransformation(jf.si); t.performImageTransformation(jf.si); jf.pack(); if(TestTransformerFrame.live) { Thread.sleep(2000); } jf.dispose(); } }