Test cases for writers + renamed reader test cases to follow naming convention.

This commit is contained in:
Harald Kuhr
2012-01-20 13:52:34 +01:00
parent 3f381a9c4c
commit c19338b5b9
6 changed files with 134 additions and 30 deletions

View File

@@ -35,6 +35,7 @@ import javax.imageio.ImageIO;
import javax.imageio.ImageWriteParam;
import javax.imageio.ImageWriter;
import javax.imageio.event.IIOWriteProgressListener;
import javax.imageio.stream.ImageOutputStream;
import java.awt.image.RenderedImage;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -76,7 +77,8 @@ public abstract class ImageWriterAbstractTestCase {
public void testWrite() throws IOException {
ImageWriter writer = createImageWriter();
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
writer.setOutput(ImageIO.createImageOutputStream(buffer));
ImageOutputStream stream = ImageIO.createImageOutputStream(buffer);
writer.setOutput(stream);
try {
writer.write(getTestData());
@@ -84,24 +86,8 @@ public abstract class ImageWriterAbstractTestCase {
catch (IOException e) {
fail(e.getMessage());
}
assertTrue("No image data written", buffer.size() > 0);
}
@Test
public void testWrite2() {
// Note: There's a difference between new ImageOutputStreamImpl and
// ImageIO.createImageOutputStream... Make sure writers handle both
// cases
ImageWriter writer = createImageWriter();
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
try {
writer.setOutput(ImageIO.createImageOutputStream(buffer));
writer.write(getTestData());
}
catch (IOException e) {
fail(e.getMessage());
finally {
stream.close(); // Force data to be written
}
assertTrue("No image data written", buffer.size() > 0);
@@ -125,15 +111,13 @@ public abstract class ImageWriterAbstractTestCase {
assertTrue("Image data written", buffer.size() == 0);
}
@Test
@Test(expected = IllegalStateException.class)
public void testWriteNoOutput() {
ImageWriter writer = createImageWriter();
try {
writer.write(getTestData());
}
catch (IllegalStateException ignore) {
}
catch (IOException e) {
fail(e.getMessage());
}