[
https://issues.apache.org/jira/browse/AVRO-1577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14125867#comment-14125867
]
Zoltan Farkas commented on AVRO-1577:
-------------------------------------
can wherever a file deletion is being done changed to:
if (!this.outputFile.delete()) {
throw new RuntimeException("cannot delete " + this.outputFile);
}
this will make the code more robust.
also IOUtils.closeQuietly not really needed here (and the extra dependency),
code can be written instead:
BufferedReader reader = new BufferedReader(new FileReader(this.outputFile));
try {
reader = new BufferedReader(new FileReader(this.outputFile));
String line = null;
while ((line = reader.readLine()) != null) {
// No line, once trimmed, should start with a deprecated field
declaration
// nor a private field declaration. Since the nested builder uses
private
// fields, we cannot do the second check.
line = line.trim();
assertFalse("Line started with a deprecated field declaration: " + line,
line.startsWith("@Deprecated public int value"));
}
} finally {
reader.close();
}
we should consider using findbugs as part of the build, issues like this can be
avoided.
> TestSpecificCompiler is not closing resources
> ---------------------------------------------
>
> Key: AVRO-1577
> URL: https://issues.apache.org/jira/browse/AVRO-1577
> Project: Avro
> Issue Type: Bug
> Components: java
> Affects Versions: 1.7.7
> Environment: Windows
> Reporter: Stevo Slavic
> Fix For: 1.8.0
>
> Attachments: AVRO-1577.patch
>
>
> Test methods in {{TestSpecificCompiler}} are opening various {{Closable}}
> resources, but they are not closing them. Because of this, file deletion in
> {{tearDown}} silently fails (on platforms like Windows which are locking
> files that are being used). This causes few test methods to fail since they
> are using same temp file as output file - they generate new file content but
> only if file is not already present, and then assertions comparing actual and
> expected output content fail.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)