Изучая покрытие моего кода, я заметил, что многие модульные тесты не могут проверить блоки finally, которые пытаются закрыть открытые потоки InputStream в блоках finally.
Один из примеров отрывка:
try {
f = new BufferedInputStream(new FileInputStream(source));
f.read(buffer);
} finally {
if (f != null)
try {
f.close();
} catch (IOException ignored) {
}
}
}
Есть ли какое-нибудь подходящее решение для проверки всего внутри блока finally с помощью JUnit4?
Я знаю, что 100% покрытие кода недостижимо при сохранении максимальной производительности. Однако эти красные линии привлекают внимание в отчете.