uppercutbuild 0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/NDepend.xml +251 -0
- data/lib/build.bat +32 -0
- data/lib/build/Castle.Core.dll +0 -0
- data/lib/build/Castle.DynamicProxy2.dll +0 -0
- data/lib/build/Castle.MicroKernel.dll +0 -0
- data/lib/build/Castle.Windsor.dll +0 -0
- data/lib/build/UppercuT.xml +5 -0
- data/lib/build/analyze.step +78 -0
- data/lib/build/analyzers/gallio.test.step +145 -0
- data/lib/build/analyzers/mbunit2.test.step +146 -0
- data/lib/build/analyzers/moma.step +143 -0
- data/lib/build/analyzers/ncover.step +186 -0
- data/lib/build/analyzers/ndepend.step +95 -0
- data/lib/build/analyzers/nitriq.step +116 -0
- data/lib/build/analyzers/nunit.test.step +172 -0
- data/lib/build/analyzers/test.step +99 -0
- data/lib/build/compile.step +178 -0
- data/lib/build/customize.bat +41 -0
- data/lib/build/customize.build +76 -0
- data/lib/build/customizers/item.template +50 -0
- data/lib/build/default.build +164 -0
- data/lib/build/deploymentBuilder.step +103 -0
- data/lib/build/environmentBuilder.step +119 -0
- data/lib/build/generateBuildInfo.step +106 -0
- data/lib/build/ilmerge.build +174 -0
- data/lib/build/open.build +103 -0
- data/lib/build/package.step +234 -0
- data/lib/build/policyChecks.step +81 -0
- data/lib/build/updateAssemblies.build +107 -0
- data/lib/build/uppercut.dll +0 -0
- data/lib/build/uppercut.tasks.dll +0 -0
- data/lib/build/versionBuilder.step +148 -0
- data/lib/build/versioners/git.step +106 -0
- data/lib/build/versioners/hg.step +106 -0
- data/lib/build/versioners/svn.step +112 -0
- data/lib/build/versioners/tfs.step +104 -0
- data/lib/build/zip.build +162 -0
- data/lib/deployment/scripts/database.deploy +37 -0
- data/lib/deployment/templates/AppDeployment.bat +9 -0
- data/lib/deployment/templates/DBDeployment.RESTORE.bat +9 -0
- data/lib/deployment/templates/DBDeployment.bat +9 -0
- data/lib/lib/MbUnit2/MbUnit.AddIn.dll +0 -0
- data/lib/lib/MbUnit2/MbUnit.Cons.exe +0 -0
- data/lib/lib/MbUnit2/MbUnit.Cons.exe.config +12 -0
- data/lib/lib/MbUnit2/MbUnit.Framework.2.0.dll +0 -0
- data/lib/lib/MbUnit2/MbUnit.Framework.XML +6929 -0
- data/lib/lib/MbUnit2/MbUnit.Framework.dll +0 -0
- data/lib/lib/MbUnit2/MbUnit.GUI.exe +0 -0
- data/lib/lib/MbUnit2/MbUnit.GUI.exe.config +14 -0
- data/lib/lib/MbUnit2/MbUnit.MSBuild.Tasks.dll +0 -0
- data/lib/lib/MbUnit2/NAnt.Core.dll +0 -0
- data/lib/lib/MbUnit2/NGraphviz.Helpers.dll +0 -0
- data/lib/lib/MbUnit2/NGraphviz.Layout.dll +0 -0
- data/lib/lib/MbUnit2/NGraphviz.dll +0 -0
- data/lib/lib/MbUnit2/QuickGraph.Algorithms.Graphviz.dll +0 -0
- data/lib/lib/MbUnit2/QuickGraph.Algorithms.dll +0 -0
- data/lib/lib/MbUnit2/QuickGraph.dll +0 -0
- data/lib/lib/MbUnit2/Refly.dll +0 -0
- data/lib/lib/MbUnit2/TestDriven.Framework.dll +0 -0
- data/lib/lib/MbUnit2/TestFu.XML +1932 -0
- data/lib/lib/MbUnit2/TestFu.dll +0 -0
- data/lib/lib/MbUnit2/XsdTidy.exe +0 -0
- data/lib/lib/MoMA/Definitions/2.4.0.1-defs.zip +0 -0
- data/lib/lib/MoMA/ICSharpCode.SharpZipLib.dll +0 -0
- data/lib/lib/MoMA/MoMA.Analyzer.dll +0 -0
- data/lib/lib/MoMA/MoMA.exe +0 -0
- data/lib/lib/MoMA/Mono.Cecil.dll +0 -0
- data/lib/lib/MoMA/Reports/Media/fail.png +0 -0
- data/lib/lib/MoMA/Reports/Media/minus.png +0 -0
- data/lib/lib/MoMA/Reports/Media/moma.css +117 -0
- data/lib/lib/MoMA/Reports/Media/moma.js +17 -0
- data/lib/lib/MoMA/Reports/Media/pass.png +0 -0
- data/lib/lib/MoMA/Reports/Media/plus.png +0 -0
- data/lib/lib/MoMA/Resources/button_ok.png +0 -0
- data/lib/lib/MoMA/Resources/dialog-warning.png +0 -0
- data/lib/lib/MoMA/Resources/dialogback.png +0 -0
- data/lib/lib/MoMA/Resources/list-add.png +0 -0
- data/lib/lib/MoMA/Resources/list-directory.png +0 -0
- data/lib/lib/MoMA/Resources/list-remove.png +0 -0
- data/lib/lib/MoMA/Resources/monoback.png +0 -0
- data/lib/lib/MoMA/Resources/spinner.gif +0 -0
- data/lib/lib/NAnt/CollectionGen.dll +0 -0
- data/lib/lib/NAnt/Interop.MsmMergeTypeLib.dll +0 -0
- data/lib/lib/NAnt/Interop.StarTeam.dll +0 -0
- data/lib/lib/NAnt/Interop.WindowsInstaller.dll +0 -0
- data/lib/lib/NAnt/MSITaskErrors.mst +0 -0
- data/lib/lib/NAnt/MSITaskTemplate.msi +0 -0
- data/lib/lib/NAnt/MSMTaskErrors.mst +0 -0
- data/lib/lib/NAnt/MSMTaskTemplate.msm +0 -0
- data/lib/lib/NAnt/MbUnit.Framework.dll +0 -0
- data/lib/lib/NAnt/MbUnit.Tasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.CompressionTasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.Contrib.Tasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.Core.dll +0 -0
- data/lib/lib/NAnt/NAnt.DotNetTasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.MSNetTasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.NUnit.dll +0 -0
- data/lib/lib/NAnt/NAnt.NUnit1Tasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.NUnit2Tasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.SourceControlTasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.VSNetTasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.VisualCppTasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.Win32Tasks.dll +0 -0
- data/lib/lib/NAnt/NAnt.exe +0 -0
- data/lib/lib/NAnt/NAnt.exe.config +2126 -0
- data/lib/lib/NAnt/NCoverExplorer.NAntTasks.dll +0 -0
- data/lib/lib/NAnt/NDepend.Build.NAntTasks.dll +0 -0
- data/lib/lib/NAnt/NDoc.Documenter.NAnt.dll +0 -0
- data/lib/lib/NAnt/QuickGraph.Algorithms.dll +0 -0
- data/lib/lib/NAnt/QuickGraph.dll +0 -0
- data/lib/lib/NAnt/SLiNgshoT.Core.dll +0 -0
- data/lib/lib/NAnt/SLiNgshoT.exe +0 -0
- data/lib/lib/NAnt/SourceSafe.Interop.dll +0 -0
- data/lib/lib/NAnt/ThoughtWorks.CruiseControl.MSBuild.dll +0 -0
- data/lib/lib/NAnt/extensions/common/2.0/NAnt.MSBuild.dll +0 -0
- data/lib/lib/NAnt/extensions/common/2.0/NAnt.MSBuild.xml +36 -0
- data/lib/lib/NAnt/lib/common/1.1/nunit-console-runner.dll +0 -0
- data/lib/lib/NAnt/lib/common/1.1/nunit-console.exe +0 -0
- data/lib/lib/NAnt/lib/common/1.1/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/common/1.1/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/common/1.1/nunit.util.dll +0 -0
- data/lib/lib/NAnt/lib/common/2.0/nunit-console-runner.dll +0 -0
- data/lib/lib/NAnt/lib/common/2.0/nunit-console.exe +0 -0
- data/lib/lib/NAnt/lib/common/2.0/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/common/2.0/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/common/2.0/nunit.util.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/ICSharpCode.SharpCvsLib.Console.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/ICSharpCode.SharpCvsLib.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/ICSharpCode.SharpZipLib.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/NDoc.Core.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/NDoc.Documenter.Msdn.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/NDoc.ExtendedUI.dll +0 -0
- data/lib/lib/NAnt/lib/common/neutral/NUnitCore.dll +0 -0
- data/lib/lib/NAnt/lib/mono/1.0/NDoc.Core.dll +0 -0
- data/lib/lib/NAnt/lib/mono/1.0/NDoc.Documenter.Msdn.dll +0 -0
- data/lib/lib/NAnt/lib/mono/1.0/NDoc.ExtendedUI.dll +0 -0
- data/lib/lib/NAnt/lib/mono/1.0/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/mono/1.0/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/mono/1.0/nunit.util.dll +0 -0
- data/lib/lib/NAnt/lib/mono/2.0/NDoc.Core.dll +0 -0
- data/lib/lib/NAnt/lib/mono/2.0/NDoc.Documenter.Msdn.dll +0 -0
- data/lib/lib/NAnt/lib/mono/2.0/NDoc.ExtendedUI.dll +0 -0
- data/lib/lib/NAnt/lib/mono/2.0/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/mono/2.0/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/mono/2.0/nunit.util.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/NDoc.Core.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/NDoc.Documenter.Msdn.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/NDoc.ExtendedUI.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/nunit-console-runner.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/nunit-console.exe +0 -0
- data/lib/lib/NAnt/lib/net/1.0/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.0/nunit.util.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.1/NDoc.Core.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.1/NDoc.Documenter.Msdn.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.1/NDoc.ExtendedUI.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.1/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.1/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/net/1.1/nunit.util.dll +0 -0
- data/lib/lib/NAnt/lib/net/2.0/NDoc.Core.dll +0 -0
- data/lib/lib/NAnt/lib/net/2.0/NDoc.Documenter.Msdn.dll +0 -0
- data/lib/lib/NAnt/lib/net/2.0/NDoc.ExtendedUI.dll +0 -0
- data/lib/lib/NAnt/lib/net/2.0/nunit.core.dll +0 -0
- data/lib/lib/NAnt/lib/net/2.0/nunit.framework.dll +0 -0
- data/lib/lib/NAnt/lib/net/2.0/nunit.util.dll +0 -0
- data/lib/lib/NAnt/log4net.dll +0 -0
- data/lib/lib/NAnt/scvs.exe +0 -0
- data/lib/lib/NCover/ActiproEULA.html +287 -0
- data/lib/lib/NCover/ActiproSoftware.Shared.Net11.dll +0 -0
- data/lib/lib/NCover/ActiproSoftware.SyntaxEditor.Net11.dll +0 -0
- data/lib/lib/NCover/ActiproSoftware.WinUICore.Net11.dll +0 -0
- data/lib/lib/NCover/CommandBars.dll +0 -0
- data/lib/lib/NCover/ConsoleConfig.xsd +123 -0
- data/lib/lib/NCover/ConsoleExample.config +94 -0
- data/lib/lib/NCover/CoverLib.dll +0 -0
- data/lib/lib/NCover/Coverage.xsl +339 -0
- data/lib/lib/NCover/CoverageReport.xsl +468 -0
- data/lib/lib/NCover/ICSharpCode.TextEditor.dll +0 -0
- data/lib/lib/NCover/LicencePersonal.rtf +334 -0
- data/lib/lib/NCover/MSVCP80.dll +0 -0
- data/lib/lib/NCover/MSVCR80.dll +0 -0
- data/lib/lib/NCover/Microsoft.VC80.CRT.manifest +8 -0
- data/lib/lib/NCover/NCover.Console.exe +0 -0
- data/lib/lib/NCover/NCover.Console.exe.config +6 -0
- data/lib/lib/NCover/NCover.Framework.dll +0 -0
- data/lib/lib/NCover/NCoverExplorer.Console.exe +0 -0
- data/lib/lib/NCover/NCoverExplorer.Core.dll +0 -0
- data/lib/lib/NCover/NCoverExplorer.NCoverRunner.dll +0 -0
- data/lib/lib/NCover/NCoverExplorer.WinForms.dll +0 -0
- data/lib/lib/NCover/NCoverExplorer.exe +0 -0
- data/lib/lib/NCover/NCoverExplorer.exe.config +8 -0
- data/lib/lib/NCover/NCoverExplorerFAQ.html +303 -0
- data/lib/lib/NCover/NCoverExplorerReleaseNotes.html +874 -0
- data/lib/lib/NCover/NCoverFAQ.html +429 -0
- data/lib/lib/NCover/VC80CRT.MAN +15 -0
- data/lib/lib/NCover/license.txt +299 -0
- data/lib/lib/NUnit/NUnitTests.config +84 -0
- data/lib/lib/NUnit/NUnitTests.nunit +14 -0
- data/lib/lib/NUnit/agent.conf +4 -0
- data/lib/lib/NUnit/agent.log.conf +18 -0
- data/lib/lib/NUnit/framework/nunit.framework.dll +0 -0
- data/lib/lib/NUnit/framework/nunit.framework.xml +10113 -0
- data/lib/lib/NUnit/framework/nunit.mocks.dll +0 -0
- data/lib/lib/NUnit/framework/pnunit.framework.dll +0 -0
- data/lib/lib/NUnit/launcher.log.conf +18 -0
- data/lib/lib/NUnit/lib/Failure.png +0 -0
- data/lib/lib/NUnit/lib/Ignored.png +0 -0
- data/lib/lib/NUnit/lib/Inconclusive.png +0 -0
- data/lib/lib/NUnit/lib/Skipped.png +0 -0
- data/lib/lib/NUnit/lib/Success.png +0 -0
- data/lib/lib/NUnit/lib/fit.dll +0 -0
- data/lib/lib/NUnit/lib/log4net.dll +0 -0
- data/lib/lib/NUnit/lib/nunit-console-runner.dll +0 -0
- data/lib/lib/NUnit/lib/nunit-gui-runner.dll +0 -0
- data/lib/lib/NUnit/lib/nunit.core.dll +0 -0
- data/lib/lib/NUnit/lib/nunit.core.interfaces.dll +0 -0
- data/lib/lib/NUnit/lib/nunit.fixtures.dll +0 -0
- data/lib/lib/NUnit/lib/nunit.uiexception.dll +0 -0
- data/lib/lib/NUnit/lib/nunit.uikit.dll +0 -0
- data/lib/lib/NUnit/lib/nunit.util.dll +0 -0
- data/lib/lib/NUnit/nunit-agent-x86.exe +0 -0
- data/lib/lib/NUnit/nunit-agent-x86.exe.config +76 -0
- data/lib/lib/NUnit/nunit-agent.exe +0 -0
- data/lib/lib/NUnit/nunit-agent.exe.config +76 -0
- data/lib/lib/NUnit/nunit-console-x86.exe +0 -0
- data/lib/lib/NUnit/nunit-console-x86.exe.config +76 -0
- data/lib/lib/NUnit/nunit-console.exe +0 -0
- data/lib/lib/NUnit/nunit-console.exe.config +76 -0
- data/lib/lib/NUnit/nunit-x86.exe +0 -0
- data/lib/lib/NUnit/nunit-x86.exe.config +91 -0
- data/lib/lib/NUnit/nunit.exe +0 -0
- data/lib/lib/NUnit/nunit.exe.config +91 -0
- data/lib/lib/NUnit/nunit.framework.dll +0 -0
- data/lib/lib/NUnit/pnunit-agent.exe +0 -0
- data/lib/lib/NUnit/pnunit-agent.exe.config +77 -0
- data/lib/lib/NUnit/pnunit-launcher.exe +0 -0
- data/lib/lib/NUnit/pnunit-launcher.exe.config +77 -0
- data/lib/lib/NUnit/pnunit.framework.dll +0 -0
- data/lib/lib/NUnit/pnunit.tests.dll +0 -0
- data/lib/lib/NUnit/runpnunit.bat +2 -0
- data/lib/lib/NUnit/test.conf +24 -0
- data/lib/lib/NUnit/tests/loadtest-assembly.dll +0 -0
- data/lib/lib/NUnit/tests/mock-assembly.dll +0 -0
- data/lib/lib/NUnit/tests/nonamespace-assembly.dll +0 -0
- data/lib/lib/NUnit/tests/nunit-console.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit-gui.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.core.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.fixtures.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.framework.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.framework.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.mocks.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.uiexception.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.uikit.tests.dll +0 -0
- data/lib/lib/NUnit/tests/nunit.util.tests.dll +0 -0
- data/lib/lib/NUnit/tests/test-assembly.dll +0 -0
- data/lib/lib/NUnit/tests/test-utilities.dll +0 -0
- data/lib/lib/NUnit/tests/timing-tests.dll +0 -0
- data/lib/open.bat +10 -0
- data/lib/settings/LOCAL.settings +29 -0
- data/lib/settings/SettingsFileReadMe.txt +2 -0
- data/lib/settings/UppercuT.config +73 -0
- data/lib/test.bat +38 -0
- data/lib/zip.bat +23 -0
- metadata +328 -0
|
@@ -0,0 +1,468 @@
|
|
|
1
|
+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt">
|
|
2
|
+
<!-- Created for NCoverExplorer by Grant Drake (see http://www.kiwidude.com/blog/) -->
|
|
3
|
+
<xsl:output method="html" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"/>
|
|
4
|
+
|
|
5
|
+
<xsl:template match="/">
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<xsl:comment>Generated by NCoverExplorer (see http://www.kiwidude.com/blog/)</xsl:comment>
|
|
9
|
+
<title>NCoverExplorer - Merged Report</title>
|
|
10
|
+
<style>
|
|
11
|
+
body { font: small verdana, arial, helvetica; color:#000000; }
|
|
12
|
+
.coverageReportTable { font-size: 9px; }
|
|
13
|
+
.reportHeader { padding: 5px 8px 5px 8px; font-size: 12px; border: 1px solid; margin: 0px; }
|
|
14
|
+
.titleText { font-weight: bold; font-size: 12px; white-space: nowrap; padding: 0px; margin: 1px; }
|
|
15
|
+
.subtitleText { font-size: 9px; font-weight: normal; padding: 0px; margin: 1px; white-space: nowrap; }
|
|
16
|
+
.projectStatistics { font-size: 10px; border-left: #649cc0 1px solid; white-space: nowrap; width: 40%; }
|
|
17
|
+
.heading { font-weight: bold; }
|
|
18
|
+
.mainTableHeaderLeft { border: #dcdcdc 1px solid; font-weight: bold; padding-left: 5px; }
|
|
19
|
+
.mainTableHeader { border-bottom: 1px solid; border-top: 1px solid; border-right: 1px solid; text-align: center; }
|
|
20
|
+
.mainTableGraphHeader { border-bottom: 1px solid; border-top: 1px solid; border-right: 1px solid; text-align: left; font-weight: bold; }
|
|
21
|
+
.mainTableCellItem { background: #ffffff; border-left: #dcdcdc 1px solid; border-right: #dcdcdc 1px solid; padding-left: 10px; padding-right: 10px; font-weight: bold; font-size: 10px; }
|
|
22
|
+
.mainTableCellData { background: #ffffff; border-right: #dcdcdc 1px solid; text-align: center; white-space: nowrap; }
|
|
23
|
+
.mainTableCellPercent { background: #ffffff; font-weight: bold; white-space: nowrap; text-align: right; padding-left: 10px; }
|
|
24
|
+
.mainTableCellGraph { background: #ffffff; border-right: #dcdcdc 1px solid; padding-right: 5px; }
|
|
25
|
+
.mainTableCellBottom { border-bottom: #dcdcdc 1px solid; }
|
|
26
|
+
.childTableHeader { border-top: 1px solid; border-bottom: 1px solid; border-left: 1px solid; border-right: 1px solid; font-weight: bold; padding-left: 10px; }
|
|
27
|
+
.childTableCellIndentedItem { background: #ffffff; border-left: #dcdcdc 1px solid; border-right: #dcdcdc 1px solid; padding-right: 10px; font-size: 10px; }
|
|
28
|
+
.exclusionTableCellItem { background: #ffffff; border-left: #dcdcdc 1px solid; border-right: #dcdcdc 1px solid; padding-left: 10px; padding-right: 10px; }
|
|
29
|
+
.projectTable { background: #a9d9f7; border-color: #649cc0; }
|
|
30
|
+
.primaryTable { background: #d7eefd; border-color: #a4dafc; }
|
|
31
|
+
.secondaryTable { background: #f9e9b7; border-color: #f6d376; }
|
|
32
|
+
.secondaryChildTable { background: #fff6df; border-color: #f5e1b1; }
|
|
33
|
+
.exclusionTable { background: #fadada; border-color: #f37f7f; }
|
|
34
|
+
.graphBarNotVisited { font-size: 2px; border:#9c9c9c 1px solid; background:#df0000; }
|
|
35
|
+
.graphBarSatisfactory { font-size: 2px; border:#9c9c9c 1px solid; background:#f4f24e; }
|
|
36
|
+
.graphBarVisited { background: #00df00; font-size: 2px; border-left:#9c9c9c 1px solid; border-top:#9c9c9c 1px solid; border-bottom:#9c9c9c 1px solid; }
|
|
37
|
+
.graphBarVisitedFully { background: #00df00; font-size: 2px; border:#9c9c9c 1px solid; }
|
|
38
|
+
</style>
|
|
39
|
+
</head>
|
|
40
|
+
<body>
|
|
41
|
+
<table class="coverageReportTable" cellpadding="2" cellspacing="0">
|
|
42
|
+
<tbody>
|
|
43
|
+
<xsl:apply-templates select="//coverageReport" />
|
|
44
|
+
</tbody>
|
|
45
|
+
</table>
|
|
46
|
+
</body>
|
|
47
|
+
</html>
|
|
48
|
+
</xsl:template>
|
|
49
|
+
|
|
50
|
+
<!-- Main Project Section -->
|
|
51
|
+
<xsl:template match="//coverageReport">
|
|
52
|
+
<xsl:variable name="reportType" select="./@reportTitle" />
|
|
53
|
+
<xsl:variable name="threshold">
|
|
54
|
+
<xsl:choose>
|
|
55
|
+
<xsl:when test="$reportType = 'Module Class Function Summary'"><xsl:value-of select="./project/@acceptableFunction" /></xsl:when>
|
|
56
|
+
<xsl:otherwise><xsl:value-of select="./project/@acceptable" /></xsl:otherwise>
|
|
57
|
+
</xsl:choose>
|
|
58
|
+
</xsl:variable>
|
|
59
|
+
<xsl:variable name="unvisitedTitle">
|
|
60
|
+
<xsl:choose>
|
|
61
|
+
<xsl:when test="$reportType = 'Module Class Function Summary'">Unvisited Functions</xsl:when>
|
|
62
|
+
<xsl:otherwise>Unvisited SeqPts</xsl:otherwise>
|
|
63
|
+
</xsl:choose>
|
|
64
|
+
</xsl:variable>
|
|
65
|
+
<xsl:variable name="coverageTitle">
|
|
66
|
+
<xsl:choose>
|
|
67
|
+
<xsl:when test="$reportType = 'Module Class Function Summary'">Function Coverage</xsl:when>
|
|
68
|
+
<xsl:otherwise>Coverage</xsl:otherwise>
|
|
69
|
+
</xsl:choose>
|
|
70
|
+
</xsl:variable>
|
|
71
|
+
|
|
72
|
+
<xsl:call-template name="header" />
|
|
73
|
+
|
|
74
|
+
<xsl:call-template name="projectSummary">
|
|
75
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
76
|
+
<xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
|
|
77
|
+
<xsl:with-param name="coverageTitle" select="$coverageTitle" />
|
|
78
|
+
<xsl:with-param name="reportType" select="$reportType" />
|
|
79
|
+
</xsl:call-template>
|
|
80
|
+
|
|
81
|
+
<xsl:call-template name="moduleSummary">
|
|
82
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
83
|
+
<xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
|
|
84
|
+
<xsl:with-param name="coverageTitle" select="$coverageTitle" />
|
|
85
|
+
</xsl:call-template>
|
|
86
|
+
|
|
87
|
+
<xsl:if test="$reportType = 'Module Namespace Summary'">
|
|
88
|
+
<xsl:call-template name="moduleNamespaceSummary">
|
|
89
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
90
|
+
</xsl:call-template>
|
|
91
|
+
</xsl:if>
|
|
92
|
+
|
|
93
|
+
<xsl:if test="($reportType = 'Module Class Summary') or ($reportType = 'Module Class Function Summary')">
|
|
94
|
+
<xsl:call-template name="classModuleSummary">
|
|
95
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
96
|
+
<xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
|
|
97
|
+
<xsl:with-param name="coverageTitle" select="$coverageTitle" />
|
|
98
|
+
</xsl:call-template>
|
|
99
|
+
</xsl:if>
|
|
100
|
+
|
|
101
|
+
<xsl:if test="count(./exclusions/exclusion) != 0">
|
|
102
|
+
<xsl:call-template name="exclusionsSummary" />
|
|
103
|
+
</xsl:if>
|
|
104
|
+
|
|
105
|
+
<xsl:call-template name="footer" />
|
|
106
|
+
</xsl:template>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<!-- Report Header -->
|
|
110
|
+
<xsl:template name="header">
|
|
111
|
+
<tr>
|
|
112
|
+
<td class="projectTable reportHeader" colspan="5">
|
|
113
|
+
<table width="100%">
|
|
114
|
+
<tbody>
|
|
115
|
+
<tr>
|
|
116
|
+
<td valign="top">
|
|
117
|
+
<h1 class="titleText">NCoverExplorer Coverage Report - <xsl:value-of select="./project/@name" />  </h1>
|
|
118
|
+
<table cellpadding="1" class="subtitleText">
|
|
119
|
+
<tbody>
|
|
120
|
+
<tr>
|
|
121
|
+
<td class="heading">Report generated on:</td>
|
|
122
|
+
<td><xsl:value-of select="./@date" /> at <xsl:value-of select="./@time" /></td>
|
|
123
|
+
</tr>
|
|
124
|
+
<tr>
|
|
125
|
+
<td class="heading">NCoverExplorer version:</td>
|
|
126
|
+
<td><xsl:value-of select="./@version" /></td>
|
|
127
|
+
</tr>
|
|
128
|
+
<tr>
|
|
129
|
+
<td class="heading">Filtering / Sorting:</td>
|
|
130
|
+
<td><xsl:value-of select="./project/@filteredBy" /> / <xsl:value-of select="./project/@sortedBy" /></td>
|
|
131
|
+
</tr>
|
|
132
|
+
</tbody>
|
|
133
|
+
</table>
|
|
134
|
+
</td>
|
|
135
|
+
<td class="projectStatistics" align="right" valign="top">
|
|
136
|
+
<table cellpadding="1">
|
|
137
|
+
<tbody>
|
|
138
|
+
<tr>
|
|
139
|
+
<td rowspan="4" valign="top" nowrap="true" class="heading">Project Statistics:</td>
|
|
140
|
+
<td align="right" class="heading">Files:</td>
|
|
141
|
+
<td align="right"><xsl:value-of select="./project/@files" /></td>
|
|
142
|
+
<td rowspan="4"> </td>
|
|
143
|
+
<td align="right" class="heading">NCLOC:</td>
|
|
144
|
+
<td align="right"><xsl:value-of select="./project/@nonCommentLines" /></td>
|
|
145
|
+
</tr>
|
|
146
|
+
<tr>
|
|
147
|
+
<td align="right" class="heading">Classes:</td>
|
|
148
|
+
<td align="right"><xsl:value-of select="./project/@classes" /></td>
|
|
149
|
+
<td align="right" class="heading"> </td>
|
|
150
|
+
<td align="right"> </td>
|
|
151
|
+
</tr>
|
|
152
|
+
<tr>
|
|
153
|
+
<td align="right" class="heading">Functions:</td>
|
|
154
|
+
<td align="right"><xsl:value-of select="./project/@members" /></td>
|
|
155
|
+
<td align="right" class="heading">Unvisited:</td>
|
|
156
|
+
<td align="right"><xsl:value-of select="./project/@unvisitedFunctions" /></td>
|
|
157
|
+
</tr>
|
|
158
|
+
<tr>
|
|
159
|
+
<td align="right" class="heading">Seq Pts:</td>
|
|
160
|
+
<td align="right"><xsl:value-of select="./project/@sequencePoints" /></td>
|
|
161
|
+
<td align="right" class="heading">Unvisited:</td>
|
|
162
|
+
<td align="right"><xsl:value-of select="./project/@unvisitedPoints" /></td>
|
|
163
|
+
</tr>
|
|
164
|
+
</tbody>
|
|
165
|
+
</table>
|
|
166
|
+
</td>
|
|
167
|
+
</tr>
|
|
168
|
+
</tbody>
|
|
169
|
+
</table>
|
|
170
|
+
</td>
|
|
171
|
+
</tr>
|
|
172
|
+
</xsl:template>
|
|
173
|
+
|
|
174
|
+
<!-- Project Summary -->
|
|
175
|
+
<xsl:template name="projectSummary">
|
|
176
|
+
<xsl:param name="threshold" />
|
|
177
|
+
<xsl:param name="unvisitedTitle" />
|
|
178
|
+
<xsl:param name="coverageTitle" />
|
|
179
|
+
<xsl:param name="reportType" />
|
|
180
|
+
<tr>
|
|
181
|
+
<td colspan="5"> </td>
|
|
182
|
+
</tr>
|
|
183
|
+
<tr>
|
|
184
|
+
<td class="projectTable mainTableHeaderLeft">Project</td>
|
|
185
|
+
<td class="projectTable mainTableHeader">Acceptable</td>
|
|
186
|
+
<td class="projectTable mainTableHeader"><xsl:value-of select="$unvisitedTitle" /></td>
|
|
187
|
+
<td class="projectTable mainTableGraphHeader" colspan="2"><xsl:value-of select="$coverageTitle" /></td>
|
|
188
|
+
</tr>
|
|
189
|
+
<xsl:call-template name="coverageDetail">
|
|
190
|
+
<xsl:with-param name="name">
|
|
191
|
+
<xsl:choose>
|
|
192
|
+
<xsl:when test="string-length(./project/@name) > 0"><xsl:value-of select="./project/@name" /></xsl:when>
|
|
193
|
+
<xsl:otherwise> </xsl:otherwise>
|
|
194
|
+
</xsl:choose>
|
|
195
|
+
</xsl:with-param>
|
|
196
|
+
<xsl:with-param name="unvisitedPoints">
|
|
197
|
+
<xsl:choose>
|
|
198
|
+
<xsl:when test="$reportType = 'Module Class Function Summary'"><xsl:value-of select="./project/@unvisitedFunctions" /></xsl:when>
|
|
199
|
+
<xsl:otherwise><xsl:value-of select="./project/@unvisitedPoints" /></xsl:otherwise>
|
|
200
|
+
</xsl:choose>
|
|
201
|
+
</xsl:with-param>
|
|
202
|
+
<xsl:with-param name="sequencePoints">
|
|
203
|
+
<xsl:choose>
|
|
204
|
+
<xsl:when test="$reportType = 'Module Class Function Summary'"><xsl:value-of select="./project/@members" /></xsl:when>
|
|
205
|
+
<xsl:otherwise><xsl:value-of select="./project/@sequencePoints" /></xsl:otherwise>
|
|
206
|
+
</xsl:choose>
|
|
207
|
+
</xsl:with-param>
|
|
208
|
+
<xsl:with-param name="coverage">
|
|
209
|
+
<xsl:choose>
|
|
210
|
+
<xsl:when test="$reportType = 'Module Class Function Summary'"><xsl:value-of select="./project/@functionCoverage" /></xsl:when>
|
|
211
|
+
<xsl:otherwise><xsl:value-of select="./project/@coverage" /></xsl:otherwise>
|
|
212
|
+
</xsl:choose>
|
|
213
|
+
</xsl:with-param>
|
|
214
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
215
|
+
<xsl:with-param name="showThreshold">True</xsl:with-param>
|
|
216
|
+
</xsl:call-template>
|
|
217
|
+
</xsl:template>
|
|
218
|
+
|
|
219
|
+
<!-- Modules Summary -->
|
|
220
|
+
<xsl:template name="moduleSummary">
|
|
221
|
+
<xsl:param name="threshold" />
|
|
222
|
+
<xsl:param name="unvisitedTitle" />
|
|
223
|
+
<xsl:param name="coverageTitle" />
|
|
224
|
+
<tr>
|
|
225
|
+
<td colspan="5"> </td>
|
|
226
|
+
</tr>
|
|
227
|
+
<tr>
|
|
228
|
+
<td class="primaryTable mainTableHeaderLeft">Modules</td>
|
|
229
|
+
<td class="primaryTable mainTableHeader">Acceptable</td>
|
|
230
|
+
<td class="primaryTable mainTableHeader"><xsl:value-of select="$unvisitedTitle" /></td>
|
|
231
|
+
<td class="primaryTable mainTableGraphHeader" colspan="2"><xsl:value-of select="$coverageTitle" /></td>
|
|
232
|
+
</tr>
|
|
233
|
+
<xsl:for-each select="./modules/module">
|
|
234
|
+
<xsl:call-template name="coverageDetail">
|
|
235
|
+
<xsl:with-param name="name" select="./@name" />
|
|
236
|
+
<xsl:with-param name="unvisitedPoints" select="./@unvisitedPoints" />
|
|
237
|
+
<xsl:with-param name="sequencePoints" select="./@sequencePoints" />
|
|
238
|
+
<xsl:with-param name="coverage" select="./@coverage" />
|
|
239
|
+
<xsl:with-param name="threshold" select="./@acceptable" />
|
|
240
|
+
<xsl:with-param name="showThreshold">True</xsl:with-param>
|
|
241
|
+
</xsl:call-template>
|
|
242
|
+
</xsl:for-each>
|
|
243
|
+
</xsl:template>
|
|
244
|
+
|
|
245
|
+
<!-- Namespaces per Module Summary -->
|
|
246
|
+
<xsl:template name="moduleNamespaceSummary">
|
|
247
|
+
<xsl:param name="threshold" />
|
|
248
|
+
<xsl:for-each select="./modules/module">
|
|
249
|
+
<tr>
|
|
250
|
+
<td colspan="5"> </td>
|
|
251
|
+
</tr>
|
|
252
|
+
<tr>
|
|
253
|
+
<td class="secondaryTable mainTableHeaderLeft">Module</td>
|
|
254
|
+
<td class="secondaryTable mainTableHeader">Acceptable</td>
|
|
255
|
+
<td class="secondaryTable mainTableHeader">Unvisited SeqPts</td>
|
|
256
|
+
<td class="secondaryTable mainTableGraphHeader" colspan="2">Coverage</td>
|
|
257
|
+
</tr>
|
|
258
|
+
<xsl:call-template name="coverageDetailSecondary">
|
|
259
|
+
<xsl:with-param name="name" select="./@name" />
|
|
260
|
+
<xsl:with-param name="unvisitedPoints" select="./@unvisitedPoints" />
|
|
261
|
+
<xsl:with-param name="sequencePoints" select="./@sequencePoints" />
|
|
262
|
+
<xsl:with-param name="coverage" select="./@coverage" />
|
|
263
|
+
<xsl:with-param name="threshold" select="./@acceptable" />
|
|
264
|
+
</xsl:call-template>
|
|
265
|
+
<tr>
|
|
266
|
+
<td class="secondaryChildTable childTableHeader" colspan="5">Namespaces</td>
|
|
267
|
+
</tr>
|
|
268
|
+
<xsl:for-each select="./namespace">
|
|
269
|
+
<xsl:call-template name="coverageIndentedDetail">
|
|
270
|
+
<xsl:with-param name="name" select="./@name" />
|
|
271
|
+
<xsl:with-param name="unvisitedPoints" select="./@unvisitedPoints" />
|
|
272
|
+
<xsl:with-param name="sequencePoints" select="./@sequencePoints" />
|
|
273
|
+
<xsl:with-param name="coverage" select="./@coverage" />
|
|
274
|
+
<xsl:with-param name="threshold" select="./../@acceptable" />
|
|
275
|
+
</xsl:call-template>
|
|
276
|
+
</xsl:for-each>
|
|
277
|
+
</xsl:for-each>
|
|
278
|
+
</xsl:template>
|
|
279
|
+
|
|
280
|
+
<!-- Classes per Namespace per Module Summary -->
|
|
281
|
+
<xsl:template name="classModuleSummary">
|
|
282
|
+
<xsl:param name="threshold" />
|
|
283
|
+
<xsl:param name="unvisitedTitle" />
|
|
284
|
+
<xsl:param name="coverageTitle" />
|
|
285
|
+
<xsl:for-each select="./modules/module">
|
|
286
|
+
<tr>
|
|
287
|
+
<td colspan="5"> </td>
|
|
288
|
+
</tr>
|
|
289
|
+
<tr>
|
|
290
|
+
<td class="secondaryTable mainTableHeaderLeft">Module</td>
|
|
291
|
+
<td class="secondaryTable mainTableHeader">Acceptable</td>
|
|
292
|
+
<td class="secondaryTable mainTableHeader"><xsl:value-of select="$unvisitedTitle" /></td>
|
|
293
|
+
<td class="secondaryTable mainTableGraphHeader" colspan="2"><xsl:value-of select="$coverageTitle" /></td>
|
|
294
|
+
</tr>
|
|
295
|
+
<xsl:call-template name="coverageDetailSecondary">
|
|
296
|
+
<xsl:with-param name="name" select="./@name" />
|
|
297
|
+
<xsl:with-param name="unvisitedPoints" select="./@unvisitedPoints" />
|
|
298
|
+
<xsl:with-param name="sequencePoints" select="./@sequencePoints" />
|
|
299
|
+
<xsl:with-param name="coverage" select="./@coverage" />
|
|
300
|
+
<xsl:with-param name="threshold" select="./@acceptable" />
|
|
301
|
+
</xsl:call-template>
|
|
302
|
+
<tr>
|
|
303
|
+
<td class="secondaryChildTable childTableHeader" colspan="5">Namespace / Classes</td>
|
|
304
|
+
</tr>
|
|
305
|
+
<xsl:for-each select="./namespace">
|
|
306
|
+
<xsl:call-template name="coverageIndentedDetail">
|
|
307
|
+
<xsl:with-param name="name" select="./@name" />
|
|
308
|
+
<xsl:with-param name="unvisitedPoints" select="./@unvisitedPoints" />
|
|
309
|
+
<xsl:with-param name="sequencePoints" select="./@sequencePoints" />
|
|
310
|
+
<xsl:with-param name="coverage" select="./@coverage" />
|
|
311
|
+
<xsl:with-param name="threshold" select="../@acceptable" />
|
|
312
|
+
<xsl:with-param name="styleTweak">padding-left:20px;font-weight:bold</xsl:with-param>
|
|
313
|
+
</xsl:call-template>
|
|
314
|
+
<xsl:for-each select="./class">
|
|
315
|
+
<xsl:call-template name="coverageIndentedDetail">
|
|
316
|
+
<xsl:with-param name="name" select="./@name" />
|
|
317
|
+
<xsl:with-param name="unvisitedPoints" select="./@unvisitedPoints" />
|
|
318
|
+
<xsl:with-param name="sequencePoints" select="./@sequencePoints" />
|
|
319
|
+
<xsl:with-param name="coverage" select="./@coverage" />
|
|
320
|
+
<xsl:with-param name="threshold" select="../../@acceptable" />
|
|
321
|
+
<xsl:with-param name="styleTweak">padding-left:30px</xsl:with-param>
|
|
322
|
+
<xsl:with-param name="scale">160</xsl:with-param>
|
|
323
|
+
</xsl:call-template>
|
|
324
|
+
</xsl:for-each>
|
|
325
|
+
</xsl:for-each>
|
|
326
|
+
</xsl:for-each>
|
|
327
|
+
</xsl:template>
|
|
328
|
+
|
|
329
|
+
<!-- Coverage detail row in main grid displaying a name, statistics and graph bar -->
|
|
330
|
+
<xsl:template name="coverageDetail">
|
|
331
|
+
<xsl:param name="name" />
|
|
332
|
+
<xsl:param name="unvisitedPoints" />
|
|
333
|
+
<xsl:param name="sequencePoints" />
|
|
334
|
+
<xsl:param name="coverage" />
|
|
335
|
+
<xsl:param name="threshold" />
|
|
336
|
+
<xsl:param name="showThreshold" />
|
|
337
|
+
<tr>
|
|
338
|
+
<xsl:choose>
|
|
339
|
+
<xsl:when test="$showThreshold='True'">
|
|
340
|
+
<td class="mainTableCellBottom mainTableCellItem"><xsl:value-of select="$name" /></td>
|
|
341
|
+
<td class="mainTableCellBottom mainTableCellData"><xsl:value-of select="concat(format-number($threshold,'#0.0'), ' %')" /></td>
|
|
342
|
+
</xsl:when>
|
|
343
|
+
<xsl:otherwise>
|
|
344
|
+
<td class="mainTableCellBottom mainTableCellItem" colspan="2"><xsl:value-of select="$name" /></td>
|
|
345
|
+
</xsl:otherwise>
|
|
346
|
+
</xsl:choose>
|
|
347
|
+
<td class="mainTableCellBottom mainTableCellData"><xsl:value-of select="$unvisitedPoints" /></td>
|
|
348
|
+
<td class="mainTableCellBottom mainTableCellPercent"><xsl:value-of select="concat(format-number($coverage,'#0.0'), ' %')" /></td>
|
|
349
|
+
<td class="mainTableCellBottom mainTableCellGraph">
|
|
350
|
+
<xsl:call-template name="detailPercent">
|
|
351
|
+
<xsl:with-param name="notVisited" select="$unvisitedPoints" />
|
|
352
|
+
<xsl:with-param name="total" select="$sequencePoints" />
|
|
353
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
354
|
+
<xsl:with-param name="scale" select="200" />
|
|
355
|
+
</xsl:call-template>
|
|
356
|
+
</td>
|
|
357
|
+
</tr>
|
|
358
|
+
</xsl:template>
|
|
359
|
+
|
|
360
|
+
<!-- Coverage detail row in secondary grid header displaying a name, statistics and graph bar -->
|
|
361
|
+
<xsl:template name="coverageDetailSecondary">
|
|
362
|
+
<xsl:param name="name" />
|
|
363
|
+
<xsl:param name="unvisitedPoints" />
|
|
364
|
+
<xsl:param name="sequencePoints" />
|
|
365
|
+
<xsl:param name="coverage" />
|
|
366
|
+
<xsl:param name="threshold" />
|
|
367
|
+
<tr>
|
|
368
|
+
<td class="mainTableCellItem"><xsl:value-of select="$name" /></td>
|
|
369
|
+
<td class="mainTableCellData"><xsl:value-of select="concat(format-number($threshold,'#0.0'), ' %')" /></td>
|
|
370
|
+
<td class="mainTableCellData"><xsl:value-of select="$unvisitedPoints" /></td>
|
|
371
|
+
<td class="mainTableCellPercent"><xsl:value-of select="concat(format-number($coverage,'#0.0'), ' %')" /></td>
|
|
372
|
+
<td class="mainTableCellGraph">
|
|
373
|
+
<xsl:call-template name="detailPercent">
|
|
374
|
+
<xsl:with-param name="notVisited" select="$unvisitedPoints" />
|
|
375
|
+
<xsl:with-param name="total" select="$sequencePoints" />
|
|
376
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
377
|
+
<xsl:with-param name="scale" select="200" />
|
|
378
|
+
</xsl:call-template>
|
|
379
|
+
</td>
|
|
380
|
+
</tr>
|
|
381
|
+
</xsl:template>
|
|
382
|
+
|
|
383
|
+
<!-- Coverage detail row with indented item name and shrunk graph bar -->
|
|
384
|
+
<xsl:template name="coverageIndentedDetail">
|
|
385
|
+
<xsl:param name="name" />
|
|
386
|
+
<xsl:param name="unvisitedPoints" />
|
|
387
|
+
<xsl:param name="sequencePoints" />
|
|
388
|
+
<xsl:param name="coverage" />
|
|
389
|
+
<xsl:param name="threshold" />
|
|
390
|
+
<xsl:param name="styleTweak">padding-left:20px</xsl:param>
|
|
391
|
+
<xsl:param name="scale">180</xsl:param>
|
|
392
|
+
<tr>
|
|
393
|
+
<td class="mainTableCellBottom childTableCellIndentedItem" colspan="2"><xsl:attribute name="style"><xsl:value-of select="$styleTweak"/></xsl:attribute><xsl:value-of select="$name" /></td>
|
|
394
|
+
<td class="mainTableCellBottom mainTableCellData"><xsl:value-of select="$unvisitedPoints" /></td>
|
|
395
|
+
<td class="mainTableCellBottom mainTableCellPercent"><xsl:value-of select="concat(format-number($coverage,'#0.0'), ' %')" /></td>
|
|
396
|
+
<td class="mainTableCellBottom mainTableCellGraph">
|
|
397
|
+
<xsl:call-template name="detailPercent">
|
|
398
|
+
<xsl:with-param name="notVisited" select="$unvisitedPoints" />
|
|
399
|
+
<xsl:with-param name="total" select="$sequencePoints" />
|
|
400
|
+
<xsl:with-param name="threshold" select="$threshold" />
|
|
401
|
+
<xsl:with-param name="scale" select="$scale" />
|
|
402
|
+
</xsl:call-template>
|
|
403
|
+
</td>
|
|
404
|
+
</tr>
|
|
405
|
+
</xsl:template>
|
|
406
|
+
|
|
407
|
+
<!-- Exclusions Summary -->
|
|
408
|
+
<xsl:template name="exclusionsSummary">
|
|
409
|
+
<tr>
|
|
410
|
+
<td colspan="5"> </td>
|
|
411
|
+
</tr>
|
|
412
|
+
<tr>
|
|
413
|
+
<td class="exclusionTable mainTableHeaderLeft" colspan="3">Excluded From Coverage Results</td>
|
|
414
|
+
<td class="exclusionTable mainTableGraphHeader" colspan="2">All Code Within</td>
|
|
415
|
+
</tr>
|
|
416
|
+
<xsl:for-each select="./exclusions/exclusion">
|
|
417
|
+
<tr>
|
|
418
|
+
<td class="mainTableCellBottom exclusionTableCellItem" colspan="3"><xsl:value-of select="@name" /></td>
|
|
419
|
+
<td class="mainTableCellBottom mainTableCellGraph" colspan="2"><xsl:value-of select="@category" /></td>
|
|
420
|
+
</tr>
|
|
421
|
+
</xsl:for-each>
|
|
422
|
+
</xsl:template>
|
|
423
|
+
|
|
424
|
+
<!-- Footer -->
|
|
425
|
+
<xsl:template name="footer">
|
|
426
|
+
<tr>
|
|
427
|
+
<td colspan="5"> </td>
|
|
428
|
+
</tr>
|
|
429
|
+
</xsl:template>
|
|
430
|
+
|
|
431
|
+
<!-- Draw % Green/Red/Yellow Bar -->
|
|
432
|
+
<xsl:template name="detailPercent">
|
|
433
|
+
<xsl:param name="notVisited" />
|
|
434
|
+
<xsl:param name="total" />
|
|
435
|
+
<xsl:param name="threshold" />
|
|
436
|
+
<xsl:param name="scale" />
|
|
437
|
+
<xsl:variable name="visited" select="$total - $notVisited" />
|
|
438
|
+
<xsl:variable name="coverage" select="$visited div $total * 100"/>
|
|
439
|
+
<table cellpadding="0" cellspacing="0">
|
|
440
|
+
<tbody>
|
|
441
|
+
<tr>
|
|
442
|
+
<xsl:if test="$notVisited = 0">
|
|
443
|
+
<td class="graphBarVisitedFully" height="14">
|
|
444
|
+
<xsl:attribute name="width">
|
|
445
|
+
<xsl:value-of select="$scale" />
|
|
446
|
+
</xsl:attribute>.</td>
|
|
447
|
+
</xsl:if>
|
|
448
|
+
<xsl:if test="($visited != 0) and ($notVisited != 0)">
|
|
449
|
+
<td class="graphBarVisited" height="14">
|
|
450
|
+
<xsl:attribute name="width">
|
|
451
|
+
<xsl:value-of select="format-number($coverage div 100 * $scale, '0') - 1" />
|
|
452
|
+
</xsl:attribute>.</td>
|
|
453
|
+
</xsl:if>
|
|
454
|
+
<xsl:if test="$notVisited != 0">
|
|
455
|
+
<td height="14">
|
|
456
|
+
<xsl:attribute name="class">
|
|
457
|
+
<xsl:if test="$coverage >= $threshold">graphBarSatisfactory</xsl:if>
|
|
458
|
+
<xsl:if test="$coverage < $threshold">graphBarNotVisited</xsl:if>
|
|
459
|
+
</xsl:attribute>
|
|
460
|
+
<xsl:attribute name="width">
|
|
461
|
+
<xsl:value-of select="format-number($notVisited div $total * $scale, '0')" />
|
|
462
|
+
</xsl:attribute>.</td>
|
|
463
|
+
</xsl:if>
|
|
464
|
+
</tr>
|
|
465
|
+
</tbody>
|
|
466
|
+
</table>
|
|
467
|
+
</xsl:template>
|
|
468
|
+
</xsl:stylesheet>
|