mirror of
https://github.com/haraldk/TwelveMonkeys.git
synced 2025-08-02 11:05:29 -04:00
ImageWriterAbstractTest refactorings.
This commit is contained in:
parent
9fdbc3b1fc
commit
6c34fb211f
@ -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<BMPImageWriter> {
|
||||
@Override
|
||||
protected ImageWriter createImageWriter() {
|
||||
return provider.createWriterInstance(null);
|
||||
protected ImageWriterSpi createProvider() {
|
||||
return new BMPImageWriterSpi();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<? extends RenderedImage> getTestData() {
|
||||
return Arrays.asList(
|
||||
return Collections.singletonList(
|
||||
new BufferedImage(10, 10, BufferedImage.TYPE_4BYTE_ABGR)
|
||||
);
|
||||
}
|
||||
|
@ -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<ICOImageWriter> {
|
||||
@Override
|
||||
protected ImageWriter createImageWriter() {
|
||||
return provider.createWriterInstance(null);
|
||||
protected ImageWriterSpi createProvider() {
|
||||
return new ICOImageWriterSpi();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -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<T extends ImageWriter> {
|
||||
|
||||
// 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<T> writerClass = (Class<T>) ((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<? extends RenderedImage> 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));
|
||||
|
||||
|
@ -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<ICNSImageWriter> {
|
||||
|
||||
@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)) {
|
||||
|
@ -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<IFFImageWriter> {
|
||||
@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<? extends RenderedImage> 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -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<JPEGImageWriter> {
|
||||
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);
|
||||
|
@ -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<PICTImageWriter> {
|
||||
@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<? extends RenderedImage> testData = getTestData();
|
||||
for (int i = 0; i < testData.size(); i++) {
|
||||
|
@ -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<PNMImageWriter> {
|
||||
@Override
|
||||
protected ImageWriter createImageWriter() {
|
||||
return provider.createWriterInstance(null);
|
||||
protected ImageWriterSpi createProvider() {
|
||||
return new PNMImageWriterSpi();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -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<TGAImageWriter> {
|
||||
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);
|
||||
|
@ -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<TIFFImageWriter> {
|
||||
@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<URL> 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;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user