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 9bb1065c Use try-with-resources 9bb1065c is described below commit 9bb1065c422a85def9f119d338b54b32d40d13ed Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Sun Oct 29 10:45:48 2023 -0400 Use try-with-resources --- .../harmony/pack200/tests/ArchiveTest.java | 112 +++++++++------------ 1 file changed, 50 insertions(+), 62 deletions(-) diff --git a/src/test/java/org/apache/commons/compress/harmony/pack200/tests/ArchiveTest.java b/src/test/java/org/apache/commons/compress/harmony/pack200/tests/ArchiveTest.java index c16ac133..44d116ef 100755 --- a/src/test/java/org/apache/commons/compress/harmony/pack200/tests/ArchiveTest.java +++ b/src/test/java/org/apache/commons/compress/harmony/pack200/tests/ArchiveTest.java @@ -57,13 +57,12 @@ public class ArchiveTest { }) .map(Arguments::of); } + JarFile in; OutputStream out; - File file; - private void compareFiles(final JarFile jarFile, final JarFile jarFile2) - throws IOException { + private void compareFiles(final JarFile jarFile, final JarFile jarFile2) throws IOException { final Enumeration<JarEntry> entries = jarFile.entries(); while (entries.hasMoreElements()) { @@ -74,33 +73,23 @@ public class ArchiveTest { final JarEntry entry2 = jarFile2.getJarEntry(name); assertNotNull(entry2, "Missing Entry: " + name); // assertEquals(entry.getTime(), entry2.getTime()); - if (!name.equals("META-INF/MANIFEST.MF")) { // Manifests aren't - // necessarily - // byte-for-byte - // identical - + if (!name.equals("META-INF/MANIFEST.MF")) { + // Manifests aren't necessarily byte-for-byte identical final InputStream ours = jarFile.getInputStream(entry); final InputStream expected = jarFile2.getInputStream(entry2); - final BufferedReader reader1 = new BufferedReader( - new InputStreamReader(ours)); - final BufferedReader reader2 = new BufferedReader( - new InputStreamReader(expected)); - String line1 = reader1.readLine(); - String line2 = reader2.readLine(); - int i = 1; - while (line1 != null || line2 != null) { - assertEquals(line2, line1, "Unpacked files differ for " + name); - line1 = reader1.readLine(); - line2 = reader2.readLine(); - i++; + try (BufferedReader reader1 = new BufferedReader(new InputStreamReader(ours)); + BufferedReader reader2 = new BufferedReader(new InputStreamReader(expected))) { + String line1 = reader1.readLine(); + String line2 = reader2.readLine(); + while (line1 != null || line2 != null) { + assertEquals(line2, line1, "Unpacked files differ for " + name); + line1 = reader1.readLine(); + line2 = reader2.readLine(); + } } - reader1.close(); - reader2.close(); } } - jarFile.close(); - jarFile2.close(); } private void compareJarEntries(final JarFile jarFile, final JarFile jarFile2) { @@ -141,12 +130,13 @@ public class ArchiveTest { out.close(); // now unpack - final InputStream in2 = new FileInputStream(file); final File file2 = File.createTempFile("annotationsout", ".jar"); file2.deleteOnExit(); - final JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2)); - final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); - archive.unpack(); + try (InputStream in2 = new FileInputStream(file); + JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2))) { + final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); + archive.unpack(); + } try (JarFile jarFile = new JarFile(file2); JarFile jarFile2 = new JarFile(new File(Archive.class.getResource("/pack200/annotationsUnpacked.jar").toURI()))) { compareFiles(jarFile, jarFile2); @@ -154,11 +144,8 @@ public class ArchiveTest { } @Test - public void testAnnotations2() throws IOException, Pack200Exception, - URISyntaxException { - - in = new JarFile(new File(Archive.class.getResource( - "/pack200/annotations.jar").toURI())); + public void testAnnotations2() throws IOException, Pack200Exception, URISyntaxException { + in = new JarFile(new File(Archive.class.getResource("/pack200/annotations.jar").toURI())); file = File.createTempFile("annotations", ".pack"); file.deleteOnExit(); out = new FileOutputStream(file); @@ -169,20 +156,18 @@ public class ArchiveTest { out.close(); // now unpack - final InputStream in2 = new FileInputStream(file); final File file2 = File.createTempFile("annotationsout", ".jar"); file2.deleteOnExit(); - final JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2)); - final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive( - in2, out2); - archive.unpack(); - + try (InputStream in2 = new FileInputStream(file); + JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2))) { + final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); + archive.unpack(); + } // TODO: This isn't quite right - to fix - final JarFile jarFile = new JarFile(file2); - final JarFile jarFile2 = new JarFile(new File(Archive.class.getResource( - "/pack200/annotationsRI.jar") - .toURI())); - compareFiles(jarFile, jarFile2); + try (JarFile jarFile = new JarFile(file2); + JarFile jarFile2 = new JarFile(new File(Archive.class.getResource("/pack200/annotationsRI.jar").toURI()))) { + compareFiles(jarFile, jarFile2); + } } @Test @@ -244,12 +229,13 @@ public class ArchiveTest { out.close(); // now unpack - final InputStream in2 = new FileInputStream(file); final File file2 = File.createTempFile("jndiout", ".jar"); file2.deleteOnExit(); - final JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2)); - final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); - archive.unpack(); + try (InputStream in2 = new FileInputStream(file); + JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2))) { + final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); + archive.unpack(); + } try (JarFile jarFile = new JarFile(file2); JarFile jarFile2 = new JarFile(new File(Archive.class.getResource("/pack200/jndiUnpacked.jar").toURI()))) { compareFiles(jarFile, jarFile2); @@ -257,8 +243,7 @@ public class ArchiveTest { } @Test - public void testLargeClass() throws IOException, Pack200Exception, - URISyntaxException { + public void testLargeClass() throws IOException, Pack200Exception, URISyntaxException { in = new JarFile(new File(Archive.class.getResource("/pack200/largeClassUnpacked.jar").toURI())); file = File.createTempFile("largeClass", ".pack"); file.deleteOnExit(); @@ -270,12 +255,13 @@ public class ArchiveTest { out.close(); // now unpack - final InputStream in2 = new FileInputStream(file); final File file2 = File.createTempFile("largeClassOut", ".jar"); file2.deleteOnExit(); - final JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2)); - final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); - archive.unpack(); + try (InputStream in2 = new FileInputStream(file); + JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2))) { + final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); + archive.unpack(); + } final File compareFile = new File(Archive.class.getResource("/pack200/largeClassUnpacked.jar").toURI()); try (JarFile jarFile = new JarFile(file2); JarFile jarFile2 = new JarFile(compareFile)) { @@ -315,12 +301,13 @@ public class ArchiveTest { out.close(); // now unpack - final InputStream in2 = new FileInputStream(file); final File file2 = File.createTempFile("sqlout", ".jar"); file2.deleteOnExit(); - final JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2)); - final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); - archive.unpack(); + try (InputStream in2 = new FileInputStream(file); + JarOutputStream out2 = new JarOutputStream(new FileOutputStream(file2))) { + final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(in2, out2); + archive.unpack(); + } final File compareFile = new File(Archive.class.getResource("/pack200/sqlUnpacked.jar").toURI()); try (JarFile jarFile = new JarFile(file2); JarFile jarFile2 = new JarFile(compareFile)) { @@ -332,12 +319,13 @@ public class ArchiveTest { // Test with an archive containing Annotations @Test public void testWithAnnotations2() throws Exception { - final InputStream i = Archive.class.getResourceAsStream("/pack200/annotationsRI.pack.gz"); file = File.createTempFile("annotations", ".jar"); file.deleteOnExit(); - final JarOutputStream jout = new JarOutputStream(new FileOutputStream(file)); - final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(i, jout); - archive.unpack(); + try (InputStream input = Archive.class.getResourceAsStream("/pack200/annotationsRI.pack.gz"); + JarOutputStream jout = new JarOutputStream(new FileOutputStream(file))) { + final org.apache.commons.compress.harmony.unpack200.Archive archive = new org.apache.commons.compress.harmony.unpack200.Archive(input, jout); + archive.unpack(); + } try (JarFile jarFile = new JarFile(file); JarFile jarFile2 = new JarFile(new File(Archive.class.getResource("/pack200/annotationsRI.jar").toURI()))) { compareFiles(jarFile, jarFile2);