<#include "../costDetailBox.html" /> ${message("report.about.title")}

${message("report.about.title")}

${message("report.about.description")}

<#list classesByPackage?keys as package>

${package}

<#assign classes = classesByPackage[package] /> <#list classes as clazz>

${message("report.about.class", "", clazz.name, "")}

<#assign pastPackageDeclaration = false /> <#list clazz.source.lines as line> <#if line.text?starts_with("package com.google.test.metric") > <#assign pastPackageDeclaration = true /> <#if pastPackageDeclaration && !line.text?matches("\\s*") && !line.text?starts_with("package") && !line.text?starts_with("import") > ${line.lineNumber}: ${line.text?html} <#assign classIssues = clazz.issues />

${message("report.explain.class.hardToTest", "", classIssues.className, "")}

${classIssues.totalCost}
<#if classIssues.constructionIssues?keys?size != 0> ${message("report.explain.class.construction")} <@costDetailBox classIssues.constructionIssues "construction" /> <#if classIssues.collaboratorIssues?keys?size != 0> ${message("report.explain.class.collaborator")} <@costDetailBox classIssues.collaboratorIssues "collaborator" /> <#if classIssues.directCostIssues?keys?size != 0> ${message("report.explain.class.directCost")} <@costDetailBox classIssues.directCostIssues "directCost" />