aboutsummaryrefslogtreecommitdiffstats
path: root/tests
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 /tests
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>
Diffstat (limited to 'tests')
-rw-r--r--tests/bugs/serialVersionUID/Util.java21
1 files changed, 13 insertions, 8 deletions
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 {