aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kriegisch <Alexander@Kriegisch.name>2021-04-09 14:05:00 +0700
committerAlexander Kriegisch <Alexander@Kriegisch.name>2021-04-09 14:05:00 +0700
commit060bf4c3c66841237a5acafbbe211e360c9d920b (patch)
tree021db1c7f698a3547fdf5d03855f16cf46c764d0
parentb6779de5d76af4cf89de19943324b592bb067c2d (diff)
downloadaspectj-060bf4c3c66841237a5acafbbe211e360c9d920b.tar.gz
aspectj-060bf4c3c66841237a5acafbbe211e360c9d920b.zip
Improve 2 tests do delete temporary files
There were some problems in file handling: One file in was not deleted in case an exception was thrown during the test. Another case was a JarFile which was not closed before deletion, which might work on Linux, but not on Windows where the open file is still locked after usage. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
-rw-r--r--taskdefs/src/test/java/org/aspectj/tools/ant/taskdefs/AjcTaskTest.java25
-rw-r--r--tests/bugs/serialVersionUID/Util.java21
2 files changed, 26 insertions, 20 deletions
diff --git a/taskdefs/src/test/java/org/aspectj/tools/ant/taskdefs/AjcTaskTest.java b/taskdefs/src/test/java/org/aspectj/tools/ant/taskdefs/AjcTaskTest.java
index 8e9008fba..e6ae8876b 100644
--- a/taskdefs/src/test/java/org/aspectj/tools/ant/taskdefs/AjcTaskTest.java
+++ b/taskdefs/src/test/java/org/aspectj/tools/ant/taskdefs/AjcTaskTest.java
@@ -394,18 +394,19 @@ public class AjcTaskTest extends TestCase {
checkRun(task, null);
- JarFile jarFile = new JarFile(destJar);
- String[] expected = {"copyMe.htm", "pack/includeme",
- "pack/Pack.class", "Default.class"};
- String[] unexpected = {"doNotCopy", "skipTxtFiles.txt", "pack/something.txt"};
- for (String value : expected) {
- JarEntry entry = jarFile.getJarEntry(value);
- assertTrue(value + " not found", null != entry);
- }
- for (String s : unexpected) {
- JarEntry entry = jarFile.getJarEntry(s);
- assertTrue(s + " found", null == entry);
- }
+ try (JarFile jarFile = new JarFile(destJar)) {
+ String[] expected = { "copyMe.htm", "pack/includeme",
+ "pack/Pack.class", "Default.class" };
+ String[] unexpected = { "doNotCopy", "skipTxtFiles.txt", "pack/something.txt" };
+ for (String value : expected) {
+ JarEntry entry = jarFile.getJarEntry(value);
+ assertTrue(value + " not found", null != entry);
+ }
+ for (String s : unexpected) {
+ JarEntry entry = jarFile.getJarEntry(s);
+ assertTrue(s + " found", null == entry);
+ }
+ }
}
public void testInpathDirCopyFilterError() {
diff --git a/tests/bugs/serialVersionUID/Util.java b/tests/bugs/serialVersionUID/Util.java
index 6d4dce279..d931ab13f 100644
--- a/tests/bugs/serialVersionUID/Util.java
+++ b/tests/bugs/serialVersionUID/Util.java
@@ -30,7 +30,7 @@ public class Util {
Object obj;
File file = new File(name);
file.deleteOnExit();
- ObjectInputStream in = null;
+ ObjectInputStream in = null;
try {
in = new ObjectInputStream(new FileInputStream(file));
@@ -38,14 +38,15 @@ public class Util {
System.out.println("? Util.read() obj=" + obj);
}
finally {
- in.close();
+ if (in != null)
+ in.close();
}
-
+
return obj;
}
public static void write (String name, Object obj) throws IOException {
-
+
File file = new File(name);
// File file = File.createTempFile(name,null);
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(file));
@@ -54,18 +55,22 @@ public class Util {
System.out.println("? Util.write() suid=" + ObjectStreamClass.lookup(obj.getClass()));
}
-
+
public static void main (String[] args) throws Exception {
String command = (args.length > 0)? args[0] : DEFAULT_COMMAND;
String name = (args.length > 1)? args[1] : DEFAULT_NAME;
if (command.equals("-read")) {
- Object obj = read(name);
- new File(name).delete();
+ try {
+ read(name);
+ }
+ finally {
+ new File(name).delete();
+ }
}
else if (command.equals("-fail")) {
fail(name);
- }
+ }
// if (args.length > 0) {
// }
// else {