У меня есть метод в классе:
public boolean tryFile() throws IOException {
File file = File.createTempFile("test", "dat");
file.deleteOnExit();
try (FileOutputStream fos = new FileOutputStream(file)) {
fos.write(20);
}
return file.exists();
}
Согласно документации OpenClover:
Сложность метода
Цикломати c сложность одного метода , Он рассчитывается следующим образом:
сложность пустого метода == 1
сложность простого оператора == 0
сложность блока переключения == количество операторов кейса
попытка сложности блока catch == число ловли операторы
сложность троичного выражения == 1
сложность логического выражения == число && или || в выражении
В отчете, созданном OpenClover (версия 4.4.1), сложность этого метода равна 3. Почему? Как это было посчитано?
PS. Например, в отчете JaCoCo я вижу Ctx = 1 для этого метода.