Author: fanningpj
Date: Thu Oct 26 15:19:42 2023
New Revision: 1913352
URL: http://svn.apache.org/viewvc?rev=1913352&view=rev
Log:
[bug-67579] test that we close input stream
Modified:
poi/trunk/poi/src/test/java/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
Modified:
poi/trunk/poi/src/test/java/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi/src/test/java/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java?rev=1913352&r1=1913351&r2=1913352&view=diff
==============================================================================
---
poi/trunk/poi/src/test/java/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
(original)
+++
poi/trunk/poi/src/test/java/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
Thu Oct 26 15:19:42 2023
@@ -32,6 +32,7 @@ import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
+import java.io.FilterInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -1231,4 +1232,34 @@ public final class TestHSSFWorkbook exte
}
}
}
+
+ @Test
+ void testWorkbookCloseClosesInputStream() throws Exception {
+ try (WrappedStream stream = new WrappedStream(
+ HSSFTestDataSamples.openSampleFileStream("49423.xls"))) {
+ try (HSSFWorkbook wb = new HSSFWorkbook(stream)) {
+ HSSFSheet hssfSheet = wb.getSheetAt(0);
+ assertNotNull(hssfSheet);
+ }
+ assertTrue(stream.isClosed(), "stream should be closed by
HSSFWorkbook");
+ }
+ }
+
+ private static class WrappedStream extends FilterInputStream {
+ private boolean closed;
+
+ WrappedStream(InputStream stream) {
+ super(stream);
+ }
+
+ @Override
+ public void close() throws IOException {
+ super.close();
+ closed = true;
+ }
+
+ boolean isClosed() {
+ return closed;
+ }
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]