< prev index next >

test/javax/imageio/plugins/png/ITXtTest.java

Print this page

        

*** 43,57 **** import javax.imageio.ImageWriter; import javax.imageio.metadata.IIOMetadata; import javax.imageio.metadata.IIOMetadataNode; import javax.imageio.stream.ImageOutputStream; import javax.imageio.stream.ImageInputStream; import org.w3c.dom.Node; public class ITXtTest { ! static public void main(String args[]) { ITXtTest t_en = new ITXtTest(); t_en.description = "xml - en"; t_en.keyword = "XML:com.adobe.xmp"; t_en.isCompressed = false; t_en.compression = 0; --- 43,58 ---- import javax.imageio.ImageWriter; import javax.imageio.metadata.IIOMetadata; import javax.imageio.metadata.IIOMetadataNode; import javax.imageio.stream.ImageOutputStream; import javax.imageio.stream.ImageInputStream; + import java.io.IOException; import org.w3c.dom.Node; public class ITXtTest { ! static public void main(String args[]) throws IOException { ITXtTest t_en = new ITXtTest(); t_en.description = "xml - en"; t_en.keyword = "XML:com.adobe.xmp"; t_en.isCompressed = false; t_en.compression = 0;
*** 149,178 **** return true; } ! private static void doTest(ITXtTest src) { System.out.println("Test: " + src.description); File file = new File("test.png"); writeTo(file, src); ITXtTest dst = readFrom(file); if (dst == null || !dst.equals(src)) { throw new RuntimeException("Test failed."); ! } ! System.out.println("Test passed."); } ! private static void writeTo(File f, ITXtTest t) { BufferedImage src = createBufferedImage(); try { ! ImageOutputStream imageOutputStream = ImageIO.createImageOutputStream(f); ImageTypeSpecifier imageTypeSpecifier = new ImageTypeSpecifier(src); ImageWriter imageWriter = --- 150,182 ---- return true; } ! private static void doTest(ITXtTest src) throws IOException { System.out.println("Test: " + src.description); File file = new File("test.png"); writeTo(file, src); ITXtTest dst = readFrom(file); if (dst == null || !dst.equals(src)) { + file.delete(); throw new RuntimeException("Test failed."); ! } else { ! file.delete(); System.out.println("Test passed."); } + } ! private static void writeTo(File f, ITXtTest t) throws IOException { BufferedImage src = createBufferedImage(); + ImageOutputStream imageOutputStream = null; try { ! imageOutputStream = ImageIO.createImageOutputStream(f); ImageTypeSpecifier imageTypeSpecifier = new ImageTypeSpecifier(src); ImageWriter imageWriter =
*** 192,208 **** imageWriter.write(new IIOImage(src, null, m)); imageOutputStream.close(); System.out.println("Writing done."); } catch (Throwable e) { throw new RuntimeException("Writing test failed.", e); } } ! private static ITXtTest readFrom(File f) { try { ! ImageInputStream iis = ImageIO.createImageInputStream(f); ImageReader r = ImageIO.getImageReaders(iis).next(); r.setInput(iis); IIOImage dst = r.readAll(0, null); --- 196,217 ---- imageWriter.write(new IIOImage(src, null, m)); imageOutputStream.close(); System.out.println("Writing done."); } catch (Throwable e) { + if (imageOutputStream != null) { + imageOutputStream.close(); + } + f.delete(); throw new RuntimeException("Writing test failed.", e); } } ! private static ITXtTest readFrom(File f) throws IOException { ! ImageInputStream iis = null; try { ! iis = ImageIO.createImageInputStream(f); ImageReader r = ImageIO.getImageReaders(iis).next(); r.setInput(iis); IIOImage dst = r.readAll(0, null);
*** 215,226 **** --- 224,240 ---- } if (n == null) { throw new RuntimeException("No iTXt node!"); } ITXtTest t = ITXtTest.getFromNode((IIOMetadataNode)n); + iis.close(); return t; } catch (Throwable e) { + if (iis != null) { + iis.close(); + } + f.delete(); throw new RuntimeException("Reading test failed.", e); } } private static BufferedImage createBufferedImage() {
< prev index next >