This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-compress.git
The following commit(s) were added to refs/heads/master by this push: new 3b81c57d Use try-with-resources 3b81c57d is described below commit 3b81c57d506a48b50756d403d71e763a08586312 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Sat Dec 10 13:47:09 2022 -0500 Use try-with-resources --- .../commons/compress/archivers/TarTestCase.java | 57 +++++++++++----------- .../compress/archivers/sevenz/SevenZFileTest.java | 5 +- .../compress/archivers/zip/DataDescriptorTest.java | 5 +- .../zip/ParallelScatterZipCreatorTest.java | 40 +++++++-------- .../archivers/zip/ZipArchiveInputStreamTest.java | 10 +--- 5 files changed, 54 insertions(+), 63 deletions(-) diff --git a/src/test/java/org/apache/commons/compress/archivers/TarTestCase.java b/src/test/java/org/apache/commons/compress/archivers/TarTestCase.java index 5e09689f..a2bb7ce0 100644 --- a/src/test/java/org/apache/commons/compress/archivers/TarTestCase.java +++ b/src/test/java/org/apache/commons/compress/archivers/TarTestCase.java @@ -53,19 +53,21 @@ public final class TarTestCase extends AbstractTestCase { final File output = new File(dir, "bla.tar"); final File file1 = getFile("test1.xml"); final OutputStream out = Files.newOutputStream(output.toPath()); - final ArchiveOutputStream os = ArchiveStreamFactory.DEFAULT.createArchiveOutputStream("tar", out); - final TarArchiveEntry entry = new TarArchiveEntry("testdata/test1.xml"); - entry.setModTime(0); - entry.setSize(file1.length()); - entry.setUserId(0); - entry.setGroupId(0); - entry.setUserName("avalon"); - entry.setGroupName("excalibur"); - entry.setMode(0100000); - os.putArchiveEntry(entry); - IOUtils.copy(Files.newInputStream(file1.toPath()), os); - os.closeArchiveEntry(); - os.close(); + try (ArchiveOutputStream os = ArchiveStreamFactory.DEFAULT.createArchiveOutputStream("tar", out)) { + final TarArchiveEntry entry = new TarArchiveEntry("testdata/test1.xml"); + entry.setModTime(0); + entry.setSize(file1.length()); + entry.setUserId(0); + entry.setGroupId(0); + entry.setUserName("avalon"); + entry.setGroupName("excalibur"); + entry.setMode(0100000); + os.putArchiveEntry(entry); + try (final InputStream iInputStream = Files.newInputStream(file1.toPath())) { + IOUtils.copy(iInputStream, os); + } + os.closeArchiveEntry(); + } } @Test @@ -87,12 +89,12 @@ public final class TarTestCase extends AbstractTestCase { entry.setGroupName("excalibur"); entry.setMode(0100000); os.putArchiveEntry(entry); - final InputStream in = Files.newInputStream(file1.toPath()); - IOUtils.copy(in, os); - os.closeArchiveEntry(); - os.close(); - out.close(); - in.close(); + try (final InputStream in = Files.newInputStream(file1.toPath())) { + IOUtils.copy(in, os); + os.closeArchiveEntry(); + os.close(); + out.close(); + } ArchiveOutputStream os2 = null; @@ -470,16 +472,15 @@ public final class TarTestCase extends AbstractTestCase { @Test public void testCOMPRESS178() throws Exception { final File input = getFile("COMPRESS-178.tar"); - final InputStream is = Files.newInputStream(input.toPath()); - final ArchiveInputStream in = ArchiveStreamFactory.DEFAULT.createArchiveInputStream("tar", is); - try { - in.getNextEntry(); - fail("Expected IOException"); - } catch (final IOException e) { - final Throwable t = e.getCause(); - assertTrue("Expected cause = IllegalArgumentException", t instanceof IllegalArgumentException); + try (InputStream is = Files.newInputStream(input.toPath()); ArchiveInputStream in = ArchiveStreamFactory.DEFAULT.createArchiveInputStream("tar", is)) { + try { + in.getNextEntry(); + fail("Expected IOException"); + } catch (final IOException e) { + final Throwable t = e.getCause(); + assertTrue("Expected cause = IllegalArgumentException", t instanceof IllegalArgumentException); + } } - in.close(); } @Test diff --git a/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java b/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java index 74ed971a..94767466 100644 --- a/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java +++ b/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java @@ -278,10 +278,7 @@ public class SevenZFileTest extends AbstractTestCase { @Test public void getEntriesOfUnarchiveInMemoryTest() throws IOException { - byte[] data = null; - try (InputStream fis = Files.newInputStream(getFile("bla.7z").toPath())) { - data = IOUtils.toByteArray(fis); - } + byte[] data = Files.readAllBytes(getFile("bla.7z").toPath()); try (SevenZFile sevenZFile = new SevenZFile(new SeekableInMemoryByteChannel(data))) { final Iterable<SevenZArchiveEntry> entries = sevenZFile.getEntries(); final Iterator<SevenZArchiveEntry> iter = entries.iterator(); diff --git a/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java b/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java index dfaa9100..0b5596a8 100644 --- a/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java +++ b/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java @@ -100,10 +100,7 @@ public class DataDescriptorTest { zos.closeArchiveEntry(); } - final byte[] data; - try (InputStream fis = Files.newInputStream(f.toPath())) { - data = IOUtils.toByteArray(fis); - } + final byte[] data = Files.readAllBytes(f.toPath()); final byte[] versionInLFH = Arrays.copyOfRange(data, 4, 6); // still 2.0 because of Deflate diff --git a/src/test/java/org/apache/commons/compress/archivers/zip/ParallelScatterZipCreatorTest.java b/src/test/java/org/apache/commons/compress/archivers/zip/ParallelScatterZipCreatorTest.java index 64723a4e..bbbff30f 100644 --- a/src/test/java/org/apache/commons/compress/archivers/zip/ParallelScatterZipCreatorTest.java +++ b/src/test/java/org/apache/commons/compress/archivers/zip/ParallelScatterZipCreatorTest.java @@ -158,29 +158,31 @@ public class ParallelScatterZipCreatorTest { final Enumeration<ZipArchiveEntry> entriesInPhysicalOrder = zf.getEntriesInPhysicalOrder(); while (entriesInPhysicalOrder.hasMoreElements()) { final ZipArchiveEntry zipArchiveEntry = entriesInPhysicalOrder.nextElement(); - final InputStream inputStream = zf.getInputStream(zipArchiveEntry); - final byte[] actual = IOUtils.toByteArray(inputStream); - final byte[] expected = entries.remove(zipArchiveEntry.getName()); - assertArrayEquals("For " + zipArchiveEntry.getName(), expected, actual); + try (final InputStream inputStream = zf.getInputStream(zipArchiveEntry)) { + final byte[] actual = IOUtils.toByteArray(inputStream); + final byte[] expected = entries.remove(zipArchiveEntry.getName()); + assertArrayEquals("For " + zipArchiveEntry.getName(), expected, actual); + } } } assertNotNull(zipCreator.getStatisticsMessage()); } private void removeEntriesFoundInZipFile(final File result, final Map<String, byte[]> entries) throws IOException { - final ZipFile zf = new ZipFile(result); - final Enumeration<ZipArchiveEntry> entriesInPhysicalOrder = zf.getEntriesInPhysicalOrder(); - int i = 0; - while (entriesInPhysicalOrder.hasMoreElements()){ - final ZipArchiveEntry zipArchiveEntry = entriesInPhysicalOrder.nextElement(); - final InputStream inputStream = zf.getInputStream(zipArchiveEntry); - final byte[] actual = IOUtils.toByteArray(inputStream); - final byte[] expected = entries.remove(zipArchiveEntry.getName()); - assertArrayEquals( "For " + zipArchiveEntry.getName(), expected, actual); - // check order of zip entries vs order of order of addition to the parallel zip creator - assertEquals( "For " + zipArchiveEntry.getName(), "file" + i++, zipArchiveEntry.getName()); + try (ZipFile zf = new ZipFile(result)) { + final Enumeration<ZipArchiveEntry> entriesInPhysicalOrder = zf.getEntriesInPhysicalOrder(); + int i = 0; + while (entriesInPhysicalOrder.hasMoreElements()) { + final ZipArchiveEntry zipArchiveEntry = entriesInPhysicalOrder.nextElement(); + try (InputStream inputStream = zf.getInputStream(zipArchiveEntry)) { + final byte[] actual = IOUtils.toByteArray(inputStream); + final byte[] expected = entries.remove(zipArchiveEntry.getName()); + assertArrayEquals("For " + zipArchiveEntry.getName(), expected, actual); + } + // check order of zip entries vs order of order of addition to the parallel zip creator + assertEquals("For " + zipArchiveEntry.getName(), "file" + i++, zipArchiveEntry.getName()); + } } - zf.close(); } private Map<String, byte[]> writeEntries(final ParallelScatterZipCreator zipCreator) { @@ -221,8 +223,8 @@ public class ParallelScatterZipCreatorTest { /** * Try to compress the files in src/test/resources with size no bigger than - * {@value EXPECTED_FILES_NUMBER} and with a mount of files no bigger than - * {@value EXPECTED_FILES_NUMBER} + * {@value #EXPECTED_FILES_NUMBER} and with a mount of files no bigger than + * {@value #EXPECTED_FILES_NUMBER} * * @param zipCreator The ParallelScatterZipCreator * @param consumer The parallel consumer @@ -245,7 +247,7 @@ public class ParallelScatterZipCreatorTest { continue; } - entries.put(file.getName(), IOUtils.toByteArray(Files.newInputStream(file.toPath()))); + entries.put(file.getName(), Files.readAllBytes(file.toPath())); final ZipArchiveEntry zipArchiveEntry = new ZipArchiveEntry(file.getName()); zipArchiveEntry.setMethod(ZipEntry.DEFLATED); diff --git a/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java b/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java index 352f999d..22d226b8 100644 --- a/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java +++ b/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java @@ -413,10 +413,7 @@ public class ZipArchiveInputStreamTest { @Test public void singleByteReadThrowsAtEofForCorruptedStoredEntry() throws Exception { - byte[] content; - try (InputStream fs = Files.newInputStream(getFile("COMPRESS-264.zip").toPath())) { - content = IOUtils.toByteArray(fs); - } + byte[] content = Files.readAllBytes(getFile("COMPRESS-264.zip").toPath()); // make size much bigger than entry's real size for (int i = 17; i < 26; i++) { content[i] = (byte) 0xff; @@ -447,10 +444,7 @@ public class ZipArchiveInputStreamTest { @Test public void multiByteReadThrowsAtEofForCorruptedStoredEntry() throws Exception { - byte[] content; - try (InputStream fs = Files.newInputStream(getFile("COMPRESS-264.zip").toPath())) { - content = IOUtils.toByteArray(fs); - } + byte[] content = Files.readAllBytes(getFile("COMPRESS-264.zip").toPath()); // make size much bigger than entry's real size for (int i = 17; i < 26; i++) { content[i] = (byte) 0xff;