From 359659dc3655da9fc8b3810a60e488ebdc40abc1 Mon Sep 17 00:00:00 2001 From: Harald Kuhr Date: Sun, 11 Oct 2009 22:43:41 +0200 Subject: [PATCH] - Added reference module with test cases for JDK-provided readers - Fixed ThumbsDBImageReader to pass test cases (got rid of some errouneous caching) - Added TODO to remove caching in ICOImageReader (will need a test case for that) - Minor changes in test cases to allow the reference test cases to pass --- .../util/ImageReaderAbstractTestCase.java | 29 +++--- .../imageio/plugins/ico/ICOImageReader.java | 1 + twelvemonkeys-imageio/pom.xml | 2 + twelvemonkeys-imageio/reference/license.txt | 25 +++++ twelvemonkeys-imageio/reference/pom.xml | 31 ++++++ .../reference/JPEGImageReaderTestCase.java | 91 ++++++++++++++++++ .../reference/PNGImageReaderTestCase.java | 65 +++++++++++++ .../resources/jpeg/R-7439-1151526181.jpeg | Bin 0 -> 31740 bytes .../test/resources/png/12monkeys-splash.png | Bin 0 -> 104417 bytes .../plugins/thumbsdb/ThumbsDBImageReader.java | 76 +++++++++------ .../thumbsdb/ThumbsDBImageReaderTestCase.java | 25 +++++ 11 files changed, 303 insertions(+), 42 deletions(-) create mode 100644 twelvemonkeys-imageio/reference/license.txt create mode 100644 twelvemonkeys-imageio/reference/pom.xml create mode 100644 twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/JPEGImageReaderTestCase.java create mode 100644 twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/PNGImageReaderTestCase.java create mode 100644 twelvemonkeys-imageio/reference/src/test/resources/jpeg/R-7439-1151526181.jpeg create mode 100755 twelvemonkeys-imageio/reference/src/test/resources/png/12monkeys-splash.png mode change 100755 => 100644 twelvemonkeys-imageio/thumbsdb/src/main/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReader.java mode change 100755 => 100644 twelvemonkeys-imageio/thumbsdb/src/test/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReaderTestCase.java diff --git a/twelvemonkeys-imageio/core/src/test/java/com/twelvemonkeys/imageio/util/ImageReaderAbstractTestCase.java b/twelvemonkeys-imageio/core/src/test/java/com/twelvemonkeys/imageio/util/ImageReaderAbstractTestCase.java index fd6dd848..bbfe5387 100644 --- a/twelvemonkeys-imageio/core/src/test/java/com/twelvemonkeys/imageio/util/ImageReaderAbstractTestCase.java +++ b/twelvemonkeys-imageio/core/src/test/java/com/twelvemonkeys/imageio/util/ImageReaderAbstractTestCase.java @@ -1206,12 +1206,18 @@ public abstract class ImageReaderAbstractTestCase extends catch (IIOException expected) { // TODO: This is thrown by ImageReader.getDestination. But are we happy with that? // The problem is that the checkReadParamBandSettings throws IllegalArgumentException, which seems more appropriate... - String message = expected.getMessage(); - assertTrue("Wrong message: " + message, message.toLowerCase().contains("destination")); + String message = expected.getMessage().toLowerCase(); + assertTrue( + "Wrong message: " + message + " for type " + destination.getType(), + message.contains("destination") || + ((destination.getType() == BufferedImage.TYPE_BYTE_BINARY || + destination.getType() == BufferedImage.TYPE_BYTE_INDEXED) + && message.contains("indexcolormodel")) + ); } catch (IllegalArgumentException expected) { - String message = expected.getMessage(); - assertTrue("Wrong message: " + message, message.toLowerCase().contains("dest")); + String message = expected.getMessage().toLowerCase(); + assertTrue("Wrong message: " + message, message.contains("dest")); } } } @@ -1233,14 +1239,14 @@ public abstract class ImageReaderAbstractTestCase extends } catch (IIOException expected) { // TODO: This is thrown by ImageReader.getDestination. But are we happy with that? - String message = expected.getMessage(); - assertTrue(message.toLowerCase().contains("destination")); - assertTrue(message.toLowerCase().contains("type")); + String message = expected.getMessage().toLowerCase(); + assertTrue(message.contains("destination")); + assertTrue(message.contains("type")); } catch (IllegalArgumentException expected) { - String message = expected.getMessage(); - assertTrue(message.toLowerCase().contains("destination")); - assertTrue(message.toLowerCase().contains("type")); + String message = expected.getMessage().toLowerCase(); + assertTrue(message.contains("destination")); + assertTrue(message.contains("type")); } } } @@ -1272,13 +1278,14 @@ public abstract class ImageReaderAbstractTestCase extends } // TODO: Test dest offset + destination set? + // TODO: Test that destination offset is used for image data, not just image dimensions... public void testSetDestinationOffset() throws IOException { final ImageReader reader = createReader(); TestData data = getTestData().get(0); reader.setInput(data.getInputStream()); ImageReadParam param = reader.getDefaultReadParam(); - Point point = new Point(10, 10); + Point point = new Point(37, 42); param.setDestinationOffset(point); BufferedImage image = reader.read(0, param); diff --git a/twelvemonkeys-imageio/ico/src/main/java/com/twelvemonkeys/imageio/plugins/ico/ICOImageReader.java b/twelvemonkeys-imageio/ico/src/main/java/com/twelvemonkeys/imageio/plugins/ico/ICOImageReader.java index 7be3ab71..4510ab71 100644 --- a/twelvemonkeys-imageio/ico/src/main/java/com/twelvemonkeys/imageio/plugins/ico/ICOImageReader.java +++ b/twelvemonkeys-imageio/ico/src/main/java/com/twelvemonkeys/imageio/plugins/ico/ICOImageReader.java @@ -292,6 +292,7 @@ public class ICOImageReader extends ImageReaderBase { } private BufferedImage readBitmap(final DirectoryEntry pEntry) throws IOException { + // TODO: Get rid of the caching, as the images are mutable BitmapDescriptor descriptor = mDescriptors.get(pEntry); if (descriptor == null || !mDescriptors.containsKey(pEntry)) { diff --git a/twelvemonkeys-imageio/pom.xml b/twelvemonkeys-imageio/pom.xml index d03f5ef7..f5a557ef 100644 --- a/twelvemonkeys-imageio/pom.xml +++ b/twelvemonkeys-imageio/pom.xml @@ -41,6 +41,8 @@ batik jmagick + + reference diff --git a/twelvemonkeys-imageio/reference/license.txt b/twelvemonkeys-imageio/reference/license.txt new file mode 100644 index 00000000..2d8ee79c --- /dev/null +++ b/twelvemonkeys-imageio/reference/license.txt @@ -0,0 +1,25 @@ +Copyright (c) 2009, Harald Kuhr +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name "TwelveMonkeys" nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/twelvemonkeys-imageio/reference/pom.xml b/twelvemonkeys-imageio/reference/pom.xml new file mode 100644 index 00000000..12ddce93 --- /dev/null +++ b/twelvemonkeys-imageio/reference/pom.xml @@ -0,0 +1,31 @@ + + + 4.0.0 + com.twelvemonkeys.imageio + twelvemonkeys-imageio-reference + 2.2-SNAPSHOT + TwelveMonkeys ImageIO reference test cases + + Test cases for the JDK provided ImageReader implementations for reference. + + + + twelvemonkeys-imageio + com.twelvemonkeys + 2.2-SNAPSHOT + + + + + com.twelvemonkeys.imageio + twelvemonkeys-imageio-core + + + com.twelvemonkeys.imageio + twelvemonkeys-imageio-core + tests + + + \ No newline at end of file diff --git a/twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/JPEGImageReaderTestCase.java b/twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/JPEGImageReaderTestCase.java new file mode 100644 index 00000000..f8bb1f02 --- /dev/null +++ b/twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/JPEGImageReaderTestCase.java @@ -0,0 +1,91 @@ +package com.twelvemonkeys.imageio.reference; + +import com.sun.imageio.plugins.jpeg.JPEGImageReader; +import com.sun.imageio.plugins.jpeg.JPEGImageReaderSpi; +import com.twelvemonkeys.imageio.util.ImageReaderAbstractTestCase; +import com.twelvemonkeys.lang.SystemUtil; + +import javax.imageio.spi.ImageReaderSpi; +import java.util.Arrays; +import java.util.List; +import java.awt.*; +import java.io.IOException; + +/** + * JPEGImageReaderTestCase + * + * @author Harald Kuhr + * @author last modified by $Author: haraldk$ + * @version $Id: JPEGImageReaderTestCase.java,v 1.0 Oct 9, 2009 3:37:25 PM haraldk Exp$ + */ +public class JPEGImageReaderTestCase extends ImageReaderAbstractTestCase { + private static final boolean IS_JAVA_6 = SystemUtil.isClassAvailable("java.util.Deque"); + + protected JPEGImageReaderSpi mProvider = new JPEGImageReaderSpi(); + + @Override + protected List getTestData() { + return Arrays.asList( + new TestData(getClassLoaderResource("/jpeg/R-7439-1151526181.jpeg"), new Dimension(386, 396)) + ); + } + + @Override + protected ImageReaderSpi createProvider() { + return mProvider; + } + + @Override + protected Class getReaderClass() { + return JPEGImageReader.class; + } + + @Override + protected JPEGImageReader createReader() { + try { + return (JPEGImageReader) mProvider.createReaderInstance(); + } + catch (IOException e) { + throw new RuntimeException(e); + } + } + + // These are NOT correct implementations, but I don't really care here + @Override + protected List getFormatNames() { + return Arrays.asList(mProvider.getFormatNames()); + } + + @Override + protected List getSuffixes() { + return Arrays.asList(mProvider.getFileSuffixes()); + } + + @Override + protected List getMIMETypes() { + return Arrays.asList(mProvider.getMIMETypes()); + } + + @Override + public void testSetDestination() throws IOException { + // Known bug in Sun JPEGImageReader before Java 6 + if (IS_JAVA_6) { + super.testSetDestination(); + } + else { + System.err.println("WARNING: Test skipped due to known bug in Java 1.5, please test again with Java 6 or later"); + } + } + + @Override + public void testSetDestinationType() throws IOException { + // Known bug in Sun JPEGImageReader before Java 6 + if (IS_JAVA_6) { + super.testSetDestinationType(); + } + else { + System.err.println("WARNING: Test skipped due to known bug in Java 1.5, please test again with Java 6 or later"); + } + } + +} diff --git a/twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/PNGImageReaderTestCase.java b/twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/PNGImageReaderTestCase.java new file mode 100644 index 00000000..591d8b28 --- /dev/null +++ b/twelvemonkeys-imageio/reference/src/test/java/com/twelvemonkeys/imageio/reference/PNGImageReaderTestCase.java @@ -0,0 +1,65 @@ +package com.twelvemonkeys.imageio.reference; + +import com.sun.imageio.plugins.png.PNGImageReader; +import com.sun.imageio.plugins.png.PNGImageReaderSpi; +import com.twelvemonkeys.imageio.util.ImageReaderAbstractTestCase; + +import javax.imageio.spi.ImageReaderSpi; +import java.awt.*; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; + +/** + * PNGImageReaderTestCase + * + * @author Harald Kuhr + * @author last modified by $Author: haraldk$ + * @version $Id: PNGImageReaderTestCase.java,v 1.0 Oct 9, 2009 3:37:25 PM haraldk Exp$ + */ +public class PNGImageReaderTestCase extends ImageReaderAbstractTestCase { + protected PNGImageReaderSpi mProvider = new PNGImageReaderSpi(); + + @Override + protected List getTestData() { + return Arrays.asList( + new TestData(getClassLoaderResource("/png/12monkeys-splash.png"), new Dimension(300, 410)) + ); + } + + @Override + protected ImageReaderSpi createProvider() { + return mProvider; + } + + @Override + protected Class getReaderClass() { + return PNGImageReader.class; + } + + @Override + protected PNGImageReader createReader() { + try { + return (PNGImageReader) mProvider.createReaderInstance(); + } + catch (IOException e) { + throw new RuntimeException(e); + } + } + + // These are NOT correct implementations, but I don't really care here + @Override + protected List getFormatNames() { + return Arrays.asList(mProvider.getFormatNames()); + } + + @Override + protected List getSuffixes() { + return Arrays.asList(mProvider.getFileSuffixes()); + } + + @Override + protected List getMIMETypes() { + return Arrays.asList(mProvider.getMIMETypes()); + } +} \ No newline at end of file diff --git a/twelvemonkeys-imageio/reference/src/test/resources/jpeg/R-7439-1151526181.jpeg b/twelvemonkeys-imageio/reference/src/test/resources/jpeg/R-7439-1151526181.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..a20a5899f999f130b1de12541efdc80358942b7b GIT binary patch literal 31740 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 literal 0 HcmV?d00001 diff --git a/twelvemonkeys-imageio/thumbsdb/src/main/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReader.java b/twelvemonkeys-imageio/thumbsdb/src/main/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReader.java old mode 100755 new mode 100644 index 33929f50..56b80623 --- a/twelvemonkeys-imageio/thumbsdb/src/main/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReader.java +++ b/twelvemonkeys-imageio/thumbsdb/src/main/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReader.java @@ -80,6 +80,7 @@ public class ThumbsDBImageReader extends ImageReaderBase { protected ThumbsDBImageReader(final ThumbsDBImageReaderSpi pProvider) { super(pProvider); mReader = createJPEGReader(pProvider); + initReaderListeners(); } protected void resetMembers() { @@ -128,11 +129,11 @@ public class ThumbsDBImageReader extends ImageReaderBase { * @throws java.io.IOException if an error occurs during reading */ @Override - public BufferedImage read(int pIndex, ImageReadParam pParam) throws IOException { + public BufferedImage read(final int pIndex, final ImageReadParam pParam) throws IOException { init(); checkBounds(pIndex); - // Quick lookup + // Quick look-up BufferedImage image = null; if (pIndex < mThumbnails.length) { image = mThumbnails[pIndex]; @@ -145,7 +146,9 @@ public class ThumbsDBImageReader extends ImageReaderBase { image = mReader.read(0, pParam); mReader.reset(); - mThumbnails[pIndex] = image; + if (pParam == null) { + mThumbnails[pIndex] = image; // TODO: Caching is not kosher, as images are mutable!! + } } else { // Keep progress listeners happy @@ -154,6 +157,23 @@ public class ThumbsDBImageReader extends ImageReaderBase { processImageComplete(); } + // Fake destination support + if (pParam != null && (pParam.getDestination() != null && pParam.getDestination() != image || + pParam.getDestinationType() != null && pParam.getDestinationType().getBufferedImageType() != image.getType())) { + BufferedImage destination = getDestination(pParam, getImageTypes(pIndex), getWidth(pIndex), getHeight(pIndex)); + + Graphics2D g = destination.createGraphics(); + try { + g.setComposite(AlphaComposite.Src); + g.drawImage(image, 0, 0, null); + } + finally { + g.dispose(); + } + + image = destination; + } + return image; } @@ -195,7 +215,7 @@ public class ThumbsDBImageReader extends ImageReaderBase { } private void init(final int pIndex) throws IOException { - if (mCurrentImage == -1 || pIndex != mCurrentImage) { + if (mCurrentImage == -1 || pIndex != mCurrentImage || mReader.getInput() == null) { init(); checkBounds(pIndex); mCurrentImage = pIndex; @@ -212,39 +232,32 @@ public class ThumbsDBImageReader extends ImageReaderBase { ImageInputStream input = new MemoryCacheImageInputStream(entry.getInputStream()); input.skipBytes(THUMBNAIL_OFFSET); mReader.setInput(input); - initReaderListeners(); } private void initReaderListeners() { - if (progressListeners != null) { - mReader.addIIOReadProgressListener(new ProgressListenerBase() { - @Override - public void imageComplete(ImageReader pSource) { - processImageComplete(); - } + mReader.addIIOReadProgressListener(new ProgressListenerBase() { + @Override + public void imageComplete(ImageReader pSource) { + processImageComplete(); + } - @Override - public void imageStarted(ImageReader pSource, int pImageIndex) { - processImageStarted(mCurrentImage); - } + @Override + public void imageStarted(ImageReader pSource, int pImageIndex) { + processImageStarted(mCurrentImage); + } - @Override - public void imageProgress(ImageReader pSource, float pPercentageDone) { - processImageProgress(pPercentageDone); - } + @Override + public void imageProgress(ImageReader pSource, float pPercentageDone) { + processImageProgress(pPercentageDone); + } - @Override - public void readAborted(ImageReader pSource) { - processReadAborted(); - } - }); - } - if (updateListeners != null) { - // TODO: Update listeners - } - if (warningListeners != null) { - // TODO: Warning listeners - } + @Override + public void readAborted(ImageReader pSource) { + processReadAborted(); + } + }); + // TODO: Update listeners + // TODO: Warning listeners } private void init() throws IOException { @@ -307,6 +320,7 @@ public class ThumbsDBImageReader extends ImageReaderBase { public Iterator getImageTypes(int pIndex) throws IOException { init(pIndex); + initReader(pIndex); return mReader.getImageTypes(0); } diff --git a/twelvemonkeys-imageio/thumbsdb/src/test/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReaderTestCase.java b/twelvemonkeys-imageio/thumbsdb/src/test/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReaderTestCase.java old mode 100755 new mode 100644 index 63aacaf2..868658cc --- a/twelvemonkeys-imageio/thumbsdb/src/test/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReaderTestCase.java +++ b/twelvemonkeys-imageio/thumbsdb/src/test/java/com/twelvemonkeys/imageio/plugins/thumbsdb/ThumbsDBImageReaderTestCase.java @@ -32,6 +32,7 @@ import com.twelvemonkeys.imageio.stream.BufferedImageInputStream; import com.twelvemonkeys.imageio.util.ImageReaderAbstractTestCase; import com.twelvemonkeys.io.ole2.CompoundDocument; import com.twelvemonkeys.io.ole2.Entry; +import com.twelvemonkeys.lang.SystemUtil; import javax.imageio.spi.ImageReaderSpi; import javax.imageio.stream.ImageInputStream; @@ -50,6 +51,8 @@ import java.util.List; * @version $Id: ICOImageReaderTestCase.java,v 1.0 Apr 1, 2008 10:39:17 PM haraldk Exp$ */ public class ThumbsDBImageReaderTestCase extends ImageReaderAbstractTestCase { + private static final boolean IS_JAVA_6 = SystemUtil.isClassAvailable("java.util.Deque"); + private ThumbsDBImageReaderSpi mProvider = new ThumbsDBImageReaderSpi(); protected List getTestData() { @@ -111,4 +114,26 @@ public class ThumbsDBImageReaderTestCase extends ImageReaderAbstractTestCase