diff --git a/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/BMPImageWriterTest.java b/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/BMPImageWriterTest.java index 2fc97201..f437f95c 100644 --- a/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/BMPImageWriterTest.java +++ b/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/BMPImageWriterTest.java @@ -2,10 +2,10 @@ package com.twelvemonkeys.imageio.plugins.bmp; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; -import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import java.awt.image.BufferedImage; import java.awt.image.RenderedImage; -import java.util.Arrays; +import java.util.Collections; import java.util.List; /** @@ -15,18 +15,15 @@ import java.util.List; * @author last modified by : harald.kuhr$ * @version : BMPImageWriterTest.java,v 1.0 25/06/2020 harald.kuhr Exp$ */ -public class BMPImageWriterTest extends ImageWriterAbstractTest { - - private final BMPImageWriterSpi provider = new BMPImageWriterSpi(); - +public class BMPImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return provider.createWriterInstance(null); + protected ImageWriterSpi createProvider() { + return new BMPImageWriterSpi(); } @Override protected List getTestData() { - return Arrays.asList( + return Collections.singletonList( new BufferedImage(10, 10, BufferedImage.TYPE_4BYTE_ABGR) ); } diff --git a/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/ICOImageWriterTest.java b/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/ICOImageWriterTest.java index ab6b19e6..fed5b45d 100644 --- a/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/ICOImageWriterTest.java +++ b/imageio/imageio-bmp/src/test/java/com/twelvemonkeys/imageio/plugins/bmp/ICOImageWriterTest.java @@ -2,7 +2,7 @@ package com.twelvemonkeys.imageio.plugins.bmp; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; -import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import java.awt.image.BufferedImage; import java.awt.image.RenderedImage; import java.util.Arrays; @@ -15,12 +15,10 @@ import java.util.List; * @author last modified by : harald.kuhr$ * @version : ICOImageWriterTest.java,v 1.0 25/06/2020 harald.kuhr Exp$ */ -public class ICOImageWriterTest extends ImageWriterAbstractTest { - private final ICOImageWriterSpi provider = new ICOImageWriterSpi(); - +public class ICOImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return provider.createWriterInstance(null); + protected ImageWriterSpi createProvider() { + return new ICOImageWriterSpi(); } @Override diff --git a/imageio/imageio-core/src/test/java/com/twelvemonkeys/imageio/util/ImageWriterAbstractTest.java b/imageio/imageio-core/src/test/java/com/twelvemonkeys/imageio/util/ImageWriterAbstractTest.java index 71b30237..4bc19264 100755 --- a/imageio/imageio-core/src/test/java/com/twelvemonkeys/imageio/util/ImageWriterAbstractTest.java +++ b/imageio/imageio-core/src/test/java/com/twelvemonkeys/imageio/util/ImageWriterAbstractTest.java @@ -31,6 +31,7 @@ package com.twelvemonkeys.imageio.util; import com.twelvemonkeys.imageio.stream.URLImageInputStreamSpi; + import org.junit.Test; import org.mockito.InOrder; @@ -39,12 +40,14 @@ import javax.imageio.ImageWriteParam; import javax.imageio.ImageWriter; import javax.imageio.event.IIOWriteProgressListener; import javax.imageio.spi.IIORegistry; +import javax.imageio.spi.ImageWriterSpi; import javax.imageio.stream.ImageOutputStream; import java.awt.*; import java.awt.image.BufferedImage; import java.awt.image.RenderedImage; import java.io.ByteArrayOutputStream; import java.io.IOException; +import java.lang.reflect.ParameterizedType; import java.net.URL; import java.util.List; @@ -59,7 +62,7 @@ import static org.mockito.Mockito.*; * @author last modified by $Author: haku $ * @version $Id: ImageReaderAbstractTestCase.java,v 1.0 18.nov.2004 17:38:33 haku Exp $ */ -public abstract class ImageWriterAbstractTest { +public abstract class ImageWriterAbstractTest { // TODO: Move static block + getClassLoaderResource to common superclass for reader/writer test cases or delegate. @@ -68,7 +71,16 @@ public abstract class ImageWriterAbstractTest { ImageIO.setUseCache(false); } - protected abstract ImageWriter createImageWriter(); + @SuppressWarnings("unchecked") + private final Class writerClass = (Class) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0]; + + protected final ImageWriterSpi provider = createProvider(); + + protected abstract ImageWriterSpi createProvider(); + + protected final T createWriter() throws IOException { + return writerClass.cast(provider.createWriterInstance(null)); + } protected abstract List getTestData(); @@ -104,22 +116,22 @@ public abstract class ImageWriterAbstractTest { @Test public void testSetOutput() throws IOException { // Should just pass with no exceptions - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); assertNotNull(writer); writer.setOutput(ImageIO.createImageOutputStream(new ByteArrayOutputStream())); } @Test - public void testSetOutputNull() { + public void testSetOutputNull() throws IOException { // Should just pass with no exceptions - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); assertNotNull(writer); writer.setOutput(null); } @Test public void testWrite() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); for (RenderedImage testData : getTestData()) { ByteArrayOutputStream buffer = new ByteArrayOutputStream(); @@ -136,10 +148,9 @@ public abstract class ImageWriterAbstractTest { } } - @SuppressWarnings("ConstantConditions") @Test public void testWriteNull() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); @@ -156,8 +167,8 @@ public abstract class ImageWriterAbstractTest { } @Test(expected = IllegalStateException.class) - public void testWriteNoOutput() { - ImageWriter writer = createImageWriter(); + public void testWriteNoOutput() throws IOException { + ImageWriter writer = createWriter(); try { writer.write(getTestData(0)); @@ -168,8 +179,8 @@ public abstract class ImageWriterAbstractTest { } @Test - public void testGetDefaultWriteParam() { - ImageWriter writer = createImageWriter(); + public void testGetDefaultWriteParam() throws IOException { + ImageWriter writer = createWriter(); ImageWriteParam param = writer.getDefaultWriteParam(); assertNotNull("Default ImageWriteParam is null", param); } @@ -178,20 +189,20 @@ public abstract class ImageWriterAbstractTest { // TODO: Source region and subsampling at least @Test - public void testAddIIOWriteProgressListener() { - ImageWriter writer = createImageWriter(); + public void testAddIIOWriteProgressListener() throws IOException { + ImageWriter writer = createWriter(); writer.addIIOWriteProgressListener(mock(IIOWriteProgressListener.class)); } @Test - public void testAddIIOWriteProgressListenerNull() { - ImageWriter writer = createImageWriter(); + public void testAddIIOWriteProgressListenerNull() throws IOException { + ImageWriter writer = createWriter(); writer.addIIOWriteProgressListener(null); } @Test public void testAddIIOWriteProgressListenerCallbacks() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); @@ -214,7 +225,7 @@ public abstract class ImageWriterAbstractTest { @Test public void testMultipleAddIIOWriteProgressListenerCallbacks() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); @@ -250,20 +261,20 @@ public abstract class ImageWriterAbstractTest { } @Test - public void testRemoveIIOWriteProgressListenerNull() { - ImageWriter writer = createImageWriter(); + public void testRemoveIIOWriteProgressListenerNull() throws IOException { + ImageWriter writer = createWriter(); writer.removeIIOWriteProgressListener(null); } @Test - public void testRemoveIIOWriteProgressListenerNone() { - ImageWriter writer = createImageWriter(); + public void testRemoveIIOWriteProgressListenerNone() throws IOException { + ImageWriter writer = createWriter(); writer.removeIIOWriteProgressListener(mock(IIOWriteProgressListener.class)); } @Test public void testRemoveIIOWriteProgressListener() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); @@ -284,7 +295,7 @@ public abstract class ImageWriterAbstractTest { @Test public void testRemoveIIOWriteProgressListenerMultiple() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); @@ -316,7 +327,7 @@ public abstract class ImageWriterAbstractTest { @Test public void testRemoveAllIIOWriteProgressListeners() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); @@ -339,7 +350,7 @@ public abstract class ImageWriterAbstractTest { @Test public void testRemoveAllIIOWriteProgressListenersMultiple() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); writer.setOutput(ImageIO.createImageOutputStream(buffer)); diff --git a/imageio/imageio-icns/src/test/java/com/twelvemonkeys/imageio/plugins/icns/ICNSImageWriterTest.java b/imageio/imageio-icns/src/test/java/com/twelvemonkeys/imageio/plugins/icns/ICNSImageWriterTest.java index d1af9df7..2f463cb6 100644 --- a/imageio/imageio-icns/src/test/java/com/twelvemonkeys/imageio/plugins/icns/ICNSImageWriterTest.java +++ b/imageio/imageio-icns/src/test/java/com/twelvemonkeys/imageio/plugins/icns/ICNSImageWriterTest.java @@ -31,11 +31,13 @@ package com.twelvemonkeys.imageio.plugins.icns; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; + import org.junit.Test; import javax.imageio.IIOImage; import javax.imageio.ImageIO; import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import javax.imageio.stream.ImageOutputStream; import java.awt.image.BufferedImage; import java.awt.image.RenderedImage; @@ -53,13 +55,11 @@ import static org.junit.Assert.assertTrue; * @author last modified by $Author: harald.kuhr$ * @version $Id: ICNSImageWriterTest.java,v 1.0 25/08/2018 harald.kuhr Exp$ */ -public class ICNSImageWriterTest extends ImageWriterAbstractTest { - - private final ICNSImageWriterSpi provider = new ICNSImageWriterSpi(); +public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return provider.createWriterInstance(null); + protected ImageWriterSpi createProvider() { + return new ICNSImageWriterSpi(); } @Override @@ -81,7 +81,7 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalArgumentException.class) public void testWriteNonSquare() throws IOException { // ICNS only supports square icons (except some arcane 16x12 we don't currently support) - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); @@ -97,7 +97,7 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalArgumentException.class) public void testWriteBadSize() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); @@ -111,8 +111,8 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { } @Test - public void testSequencesSupported() { - ImageWriter writer = createImageWriter(); + public void testSequencesSupported() throws IOException { + ImageWriter writer = createWriter(); try { assertTrue(writer.canWriteSequence()); } @@ -124,7 +124,7 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalStateException.class) public void testWriteSequenceNotStarted() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); @@ -141,7 +141,7 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalStateException.class) public void testEndSequenceNotStarted() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); @@ -155,7 +155,7 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalStateException.class) public void testPrepareSequenceAlreadyStarted() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); @@ -169,7 +169,7 @@ public class ICNSImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteSequence() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream output = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(output)) { diff --git a/imageio/imageio-iff/src/test/java/com/twelvemonkeys/imageio/plugins/iff/IFFImageWriterTest.java b/imageio/imageio-iff/src/test/java/com/twelvemonkeys/imageio/plugins/iff/IFFImageWriterTest.java index b1a4623b..427d2c01 100644 --- a/imageio/imageio-iff/src/test/java/com/twelvemonkeys/imageio/plugins/iff/IFFImageWriterTest.java +++ b/imageio/imageio-iff/src/test/java/com/twelvemonkeys/imageio/plugins/iff/IFFImageWriterTest.java @@ -32,10 +32,12 @@ package com.twelvemonkeys.imageio.plugins.iff; import com.twelvemonkeys.image.MonochromeColorModel; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; + import org.junit.Test; import javax.imageio.ImageIO; import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import javax.imageio.stream.ImageInputStream; import javax.imageio.stream.ImageOutputStream; import java.awt.color.ColorSpace; @@ -56,12 +58,10 @@ import static org.junit.Assert.*; * @author last modified by $Author: haraldk$ * @version $Id: JPEG2000ImageWriterTest.java,v 1.0 20.01.12 12:19 haraldk Exp$ */ -public class IFFImageWriterTest extends ImageWriterAbstractTest { - private final IFFImageWriterSpi provider = new IFFImageWriterSpi(); - +public class IFFImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return new IFFImageWriter(provider); + protected ImageWriterSpi createProvider() { + return new IFFImageWriterSpi(); } @Override @@ -81,7 +81,7 @@ public class IFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteReadCompare() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); List testData = getTestData(); @@ -116,9 +116,7 @@ public class IFFImageWriterTest extends ImageWriterAbstractTest { assertSameData(original, written); } catch (IOException e) { - AssertionError fail = new AssertionError("Failure writing test data " + i + " " + e); - fail.initCause(e); - throw fail; + throw new AssertionError("Failure writing test data " + i + " " + e, e); } } } diff --git a/imageio/imageio-jpeg/src/test/java/com/twelvemonkeys/imageio/plugins/jpeg/JPEGImageWriterTest.java b/imageio/imageio-jpeg/src/test/java/com/twelvemonkeys/imageio/plugins/jpeg/JPEGImageWriterTest.java index d902ccfd..aa2f7365 100644 --- a/imageio/imageio-jpeg/src/test/java/com/twelvemonkeys/imageio/plugins/jpeg/JPEGImageWriterTest.java +++ b/imageio/imageio-jpeg/src/test/java/com/twelvemonkeys/imageio/plugins/jpeg/JPEGImageWriterTest.java @@ -33,6 +33,7 @@ package com.twelvemonkeys.imageio.plugins.jpeg; import com.twelvemonkeys.imageio.stream.ByteArrayImageInputStream; import com.twelvemonkeys.imageio.util.IIOUtil; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; + import org.junit.Test; import org.w3c.dom.NodeList; @@ -66,22 +67,14 @@ import static org.junit.Assert.assertNotNull; * @author last modified by $Author: haraldk$ * @version $Id: JPEGImageWriterTest.java,v 1.0 06.02.12 17:05 haraldk Exp$ */ -public class JPEGImageWriterTest extends ImageWriterAbstractTest { - - private static final JPEGImageWriterSpi SPI = new JPEGImageWriterSpi(lookupDelegateProvider()); - +public class JPEGImageWriterTest extends ImageWriterAbstractTest { private static ImageWriterSpi lookupDelegateProvider() { return IIOUtil.lookupProviderByName(IIORegistry.getDefaultInstance(), "com.sun.imageio.plugins.jpeg.JPEGImageWriterSpi", ImageWriterSpi.class); } @Override - protected ImageWriter createImageWriter() { - try { - return SPI.createWriterInstance(); - } - catch (IOException e) { - throw new RuntimeException(e); - } + protected ImageWriterSpi createProvider() { + return new JPEGImageWriterSpi(lookupDelegateProvider()); } @Override @@ -97,8 +90,8 @@ public class JPEGImageWriterTest extends ImageWriterAbstractTest { } @Test - public void testReaderForWriter() { - ImageWriter writer = createImageWriter(); + public void testReaderForWriter() throws IOException { + ImageWriter writer = createWriter(); ImageReader reader = ImageIO.getImageReader(writer); assertNotNull(reader); assertEquals(writer.getClass().getPackage(), reader.getClass().getPackage()); @@ -140,7 +133,7 @@ public class JPEGImageWriterTest extends ImageWriterAbstractTest { @Test public void testTranscodeWithMetadataRGBtoRGB() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageReader reader = ImageIO.getImageReader(writer); ByteArrayOutputStream stream = transcode(reader, getClassLoaderResource("/jpeg/jfif-jfxx-thumbnail-olympus-d320l.jpg"), writer, ColorSpace.TYPE_RGB); @@ -155,7 +148,7 @@ public class JPEGImageWriterTest extends ImageWriterAbstractTest { @Test public void testTranscodeWithMetadataCMYKtoCMYK() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageReader reader = ImageIO.getImageReader(writer); ByteArrayOutputStream stream = transcode(reader, getClassLoaderResource("/jpeg/cmyk-sample-multiple-chunk-icc.jpg"), writer, ColorSpace.TYPE_CMYK); diff --git a/imageio/imageio-pict/src/test/java/com/twelvemonkeys/imageio/plugins/pict/PICTImageWriterTest.java b/imageio/imageio-pict/src/test/java/com/twelvemonkeys/imageio/plugins/pict/PICTImageWriterTest.java index 22a3d21a..dc051e1c 100644 --- a/imageio/imageio-pict/src/test/java/com/twelvemonkeys/imageio/plugins/pict/PICTImageWriterTest.java +++ b/imageio/imageio-pict/src/test/java/com/twelvemonkeys/imageio/plugins/pict/PICTImageWriterTest.java @@ -32,10 +32,12 @@ package com.twelvemonkeys.imageio.plugins.pict; import com.twelvemonkeys.imageio.stream.ByteArrayImageInputStream; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; + import org.junit.Test; import javax.imageio.ImageIO; import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import javax.imageio.stream.ImageInputStream; import javax.imageio.stream.ImageOutputStream; import java.awt.color.ColorSpace; @@ -55,12 +57,10 @@ import static org.junit.Assert.*; * @author last modified by $Author: haraldk$ * @version $Id: PICTImageWriterTest.java,v 1.0 20.01.12 12:26 haraldk Exp$ */ -public class PICTImageWriterTest extends ImageWriterAbstractTest { - private final PICTImageWriterSpi provider = new PICTImageWriterSpi(); - +public class PICTImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return new PICTImageWriter(provider); + protected ImageWriterSpi createProvider() { + return new PICTImageWriterSpi(); } @Override @@ -79,7 +79,7 @@ public class PICTImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteReadCompare() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); List testData = getTestData(); for (int i = 0; i < testData.size(); i++) { diff --git a/imageio/imageio-pnm/src/test/java/com/twelvemonkeys/imageio/plugins/pnm/PNMImageWriterTest.java b/imageio/imageio-pnm/src/test/java/com/twelvemonkeys/imageio/plugins/pnm/PNMImageWriterTest.java index 7b76fde1..8560b58f 100644 --- a/imageio/imageio-pnm/src/test/java/com/twelvemonkeys/imageio/plugins/pnm/PNMImageWriterTest.java +++ b/imageio/imageio-pnm/src/test/java/com/twelvemonkeys/imageio/plugins/pnm/PNMImageWriterTest.java @@ -2,19 +2,16 @@ package com.twelvemonkeys.imageio.plugins.pnm; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; -import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import java.awt.image.BufferedImage; import java.awt.image.RenderedImage; import java.util.Arrays; import java.util.List; -public class PNMImageWriterTest extends ImageWriterAbstractTest { - - private final PNMImageWriterSpi provider = new PNMImageWriterSpi(); - +public class PNMImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return provider.createWriterInstance(null); + protected ImageWriterSpi createProvider() { + return new PNMImageWriterSpi(); } @Override diff --git a/imageio/imageio-tga/src/test/java/com/twelvemonkeys/imageio/plugins/tga/TGAImageWriterTest.java b/imageio/imageio-tga/src/test/java/com/twelvemonkeys/imageio/plugins/tga/TGAImageWriterTest.java index 802a00f8..8d5e5b45 100644 --- a/imageio/imageio-tga/src/test/java/com/twelvemonkeys/imageio/plugins/tga/TGAImageWriterTest.java +++ b/imageio/imageio-tga/src/test/java/com/twelvemonkeys/imageio/plugins/tga/TGAImageWriterTest.java @@ -32,12 +32,14 @@ package com.twelvemonkeys.imageio.plugins.tga; import com.twelvemonkeys.imageio.util.ImageTypeSpecifiers; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; + import org.junit.Test; import javax.imageio.ImageIO; import javax.imageio.ImageReader; import javax.imageio.ImageTypeSpecifier; import javax.imageio.ImageWriter; +import javax.imageio.spi.ImageWriterSpi; import javax.imageio.stream.ImageInputStream; import javax.imageio.stream.ImageOutputStream; import java.awt.color.ColorSpace; @@ -57,14 +59,12 @@ import static org.junit.Assume.assumeNotNull; /** * TGAImageWriterTest */ -public class TGAImageWriterTest extends ImageWriterAbstractTest { - - private static final TGAImageWriterSpi PROVIDER = new TGAImageWriterSpi(); +public class TGAImageWriterTest extends ImageWriterAbstractTest { private static final ImageTypeSpecifier TYPE_USHORT_1555_ARGB = ImageTypeSpecifiers.createPacked(ColorSpace.getInstance(ColorSpace.CS_sRGB), 0x7C00, 0x03E0, 0x001F, 0x8000, DataBuffer.TYPE_USHORT, false); @Override - protected ImageWriter createImageWriter() { - return new TGAImageWriter(PROVIDER); + protected ImageWriterSpi createProvider() { + return new TGAImageWriterSpi(); } @Override @@ -86,7 +86,7 @@ public class TGAImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteRead() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageReader reader = ImageIO.getImageReader(writer); assumeNotNull(reader); diff --git a/imageio/imageio-tiff/src/test/java/com/twelvemonkeys/imageio/plugins/tiff/TIFFImageWriterTest.java b/imageio/imageio-tiff/src/test/java/com/twelvemonkeys/imageio/plugins/tiff/TIFFImageWriterTest.java index f04ad28d..7993c7be 100644 --- a/imageio/imageio-tiff/src/test/java/com/twelvemonkeys/imageio/plugins/tiff/TIFFImageWriterTest.java +++ b/imageio/imageio-tiff/src/test/java/com/twelvemonkeys/imageio/plugins/tiff/TIFFImageWriterTest.java @@ -39,6 +39,7 @@ import com.twelvemonkeys.imageio.stream.ByteArrayImageInputStream; import com.twelvemonkeys.imageio.util.ImageWriterAbstractTest; import com.twelvemonkeys.io.FastByteArrayOutputStream; import com.twelvemonkeys.io.NullOutputStream; + import org.junit.Test; import org.w3c.dom.NodeList; @@ -47,6 +48,7 @@ import javax.imageio.event.IIOWriteProgressListener; import javax.imageio.metadata.IIOMetadata; import javax.imageio.metadata.IIOMetadataFormatImpl; import javax.imageio.metadata.IIOMetadataNode; +import javax.imageio.spi.ImageWriterSpi; import javax.imageio.stream.FileCacheImageOutputStream; import javax.imageio.stream.FileImageOutputStream; import javax.imageio.stream.ImageInputStream; @@ -74,13 +76,10 @@ import static org.mockito.Mockito.*; * @author last modified by $Author: haraldk$ * @version $Id: TIFFImageWriterTest.java,v 1.0 19.09.13 13:22 haraldk Exp$ */ -public class TIFFImageWriterTest extends ImageWriterAbstractTest { - - private static final TIFFImageWriterSpi PROVIDER = new TIFFImageWriterSpi(); - +public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Override - protected ImageWriter createImageWriter() { - return new TIFFImageWriter(PROVIDER); + protected ImageWriterSpi createProvider() { + return new TIFFImageWriterSpi(); } @Override @@ -108,7 +107,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { RenderedImage image = getTestData(0); - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(buffer)) { @@ -158,7 +157,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { RenderedImage image = getTestData(0); - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(buffer)) { @@ -200,7 +199,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { RenderedImage image = getTestData(0); - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(buffer)) { @@ -254,7 +253,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { RenderedImage image = getTestData(0); - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(buffer)) { @@ -292,7 +291,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalArgumentException.class) public void testWriteIncompatibleCompression() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { @@ -312,14 +311,14 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { } @Test - public void testWriterCanWriteSequence() { - ImageWriter writer = createImageWriter(); + public void testWriterCanWriteSequence() throws IOException { + ImageWriter writer = createWriter(); assertTrue("Writer should support sequence writing", writer.canWriteSequence()); } @Test(expected = IllegalStateException.class) public void testWriteSequenceWithoutPrepare() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { @@ -330,7 +329,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test(expected = IllegalStateException.class) public void testEndSequenceWithoutPrepare() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { @@ -356,7 +355,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { ? File.createTempFile("temp-", ".tif") : new ByteArrayOutputStream(1024); - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream output = isFileDirect ? new FileImageOutputStream((File) destination) : new FileCacheImageOutputStream((OutputStream) destination, ImageIO.getCacheDirectory())) { @@ -460,7 +459,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { } } - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { writer.setOutput(output); @@ -519,7 +518,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { new BufferedImage(120, 100, BufferedImage.TYPE_INT_RGB) }; - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); IIOWriteProgressListener progress = mock(IIOWriteProgressListener.class, "progress"); writer.addIIOWriteProgressListener(progress); @@ -557,7 +556,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteParamJPEGQuality() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); try (ImageOutputStream output = ImageIO.createImageOutputStream(new NullOutputStream())) { writer.setOutput(output); @@ -598,7 +597,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { FastByteArrayOutputStream buffer = new FastByteArrayOutputStream(32768); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); writer.setOutput(output); writer.write(original); @@ -658,7 +657,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { FastByteArrayOutputStream buffer = new FastByteArrayOutputStream(32768); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); writer.setOutput(output); ImageWriteParam param = writer.getDefaultWriteParam(); @@ -722,7 +721,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { FastByteArrayOutputStream buffer = new FastByteArrayOutputStream(32768); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); writer.setOutput(output); ImageWriteParam param = writer.getDefaultWriteParam(); @@ -787,7 +786,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { FastByteArrayOutputStream buffer = new FastByteArrayOutputStream(32768); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); writer.setOutput(output); writer.write(original); @@ -847,7 +846,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { FastByteArrayOutputStream buffer = new FastByteArrayOutputStream(32768); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); writer.setOutput(output); ImageWriteParam param = writer.getDefaultWriteParam(); @@ -911,7 +910,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { FastByteArrayOutputStream buffer = new FastByteArrayOutputStream(32768); try (ImageOutputStream output = ImageIO.createImageOutputStream(buffer)) { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); writer.setOutput(output); ImageWriteParam param = writer.getDefaultWriteParam(); @@ -982,7 +981,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { // Store cropped ByteArrayOutputStream bytes = new ByteArrayOutputStream(); try (ImageOutputStream output = ImageIO.createImageOutputStream(bytes)) { - ImageWriter imageWriter = createImageWriter(); + ImageWriter imageWriter = createWriter(); imageWriter.setOutput(output); imageWriter.write(subimage); } @@ -1010,7 +1009,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteStreamMetadataDefaultMM() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream output = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(output)) { @@ -1026,7 +1025,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteStreamMetadataDefaultII() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream output = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(output)) { @@ -1042,7 +1041,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteStreamMetadataMM() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream output = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(output)) { @@ -1058,7 +1057,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testWriteStreamMetadataII() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ByteArrayOutputStream output = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(output)) { @@ -1074,7 +1073,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testMergeTreeARGB() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageWriteParam writeParam = writer.getDefaultWriteParam(); writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); writeParam.setCompressionType("LZW"); @@ -1087,7 +1086,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testMergeTreeGray() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageWriteParam writeParam = writer.getDefaultWriteParam(); writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); writeParam.setCompressionType("LZW"); @@ -1100,7 +1099,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testMergeTreeBW() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageWriteParam writeParam = writer.getDefaultWriteParam(); writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); writeParam.setCompressionType("CCITT T.6"); @@ -1113,7 +1112,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { @Test public void testRewrite() throws IOException { - ImageWriter writer = createImageWriter(); + ImageWriter writer = createWriter(); ImageReader reader = ImageIO.getImageReader(writer); List testData = Arrays.asList( @@ -1244,7 +1243,7 @@ public class TIFFImageWriterTest extends ImageWriterAbstractTest { } } - private class ImageInfo { + private static class ImageInfo { final int width; final int height;