albacore 1.0.0.rc.2 → 1.0.0.rc.3

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.
Files changed (593) hide show
  1. data/.travis.yml +1 -1
  2. data/Guardfile +0 -9
  3. data/README.md +4 -4
  4. data/Rakefile +9 -14
  5. data/albacore.gemspec +29 -31
  6. data/lib/albacore.rb +22 -15
  7. data/lib/albacore/aspnetcompiler.rb +66 -44
  8. data/lib/albacore/assemblyinfo.rb +101 -120
  9. data/lib/albacore/assemblyinfolanguages/assemblyinfoengine.rb +13 -0
  10. data/lib/albacore/config/aspnetcompilerconfig.rb +5 -4
  11. data/lib/albacore/config/assemblyinfoconfig.rb +2 -4
  12. data/lib/albacore/config/cscconfig.rb +3 -3
  13. data/lib/albacore/config/docuconfig.rb +4 -8
  14. data/lib/albacore/config/execconfig.rb +9 -5
  15. data/lib/albacore/config/fluentmigratorconfig.rb +19 -0
  16. data/lib/albacore/config/ilmergeconfig.rb +5 -10
  17. data/lib/albacore/config/msbuildconfig.rb +3 -3
  18. data/lib/albacore/config/mspecconfig.rb +19 -0
  19. data/lib/albacore/config/mstestconfig.rb +19 -0
  20. data/lib/albacore/config/nantconfig.rb +9 -6
  21. data/lib/albacore/config/nchurnconfig.rb +9 -5
  22. data/lib/albacore/config/ncoverconsoleconfig.rb +9 -5
  23. data/lib/albacore/config/ncoverreportconfig.rb +9 -6
  24. data/lib/albacore/config/ndependconfig.rb +9 -5
  25. data/lib/albacore/config/netversion.rb +10 -6
  26. data/lib/albacore/config/nugetinstallconfig.rb +18 -0
  27. data/lib/albacore/config/nugetpackconfig.rb +2 -3
  28. data/lib/albacore/config/nugetpushconfig.rb +5 -6
  29. data/lib/albacore/config/nugetupdateconfig.rb +2 -3
  30. data/lib/albacore/config/nunitconfig.rb +19 -0
  31. data/lib/albacore/config/nuspecconfig.rb +18 -0
  32. data/lib/albacore/config/plinkconfig.rb +18 -0
  33. data/lib/albacore/config/specflowconfig.rb +18 -0
  34. data/lib/albacore/config/sqlcmdconfig.rb +9 -6
  35. data/lib/albacore/config/unzipconfig.rb +9 -5
  36. data/lib/albacore/config/xbuildconfig.rb +9 -6
  37. data/lib/albacore/config/xunitconfig.rb +18 -0
  38. data/lib/albacore/config/zipdirectoryconfig.rb +9 -6
  39. data/lib/albacore/csc.rb +56 -46
  40. data/lib/albacore/docu.rb +20 -23
  41. data/lib/albacore/exec.rb +8 -6
  42. data/lib/albacore/fluentmigrator.rb +69 -0
  43. data/lib/albacore/ilmerge.rb +23 -50
  44. data/lib/albacore/msbuild.rb +36 -59
  45. data/lib/albacore/mspec.rb +39 -0
  46. data/lib/albacore/mstest.rb +47 -0
  47. data/lib/albacore/nant.rb +23 -20
  48. data/lib/albacore/nchurn.rb +34 -59
  49. data/lib/albacore/ncoverconsole.rb +38 -50
  50. data/lib/albacore/ncoverreport.rb +24 -46
  51. data/lib/albacore/ncoverreports.rb +16 -0
  52. data/lib/albacore/ncoverreports/codecoveragebase.rb +8 -6
  53. data/lib/albacore/ncoverreports/cyclomaticcomplexity.rb +3 -3
  54. data/lib/albacore/ncoverreports/fullcoveragereport.rb +5 -9
  55. data/lib/albacore/ncoverreports/reportbase.rb +23 -0
  56. data/lib/albacore/ncoverreports/reportfilterbase.rb +10 -7
  57. data/lib/albacore/ncoverreports/summaryreport.rb +5 -14
  58. data/lib/albacore/ndepend.rb +17 -17
  59. data/lib/albacore/nugetinstall.rb +48 -43
  60. data/lib/albacore/nugetpack.rb +33 -37
  61. data/lib/albacore/nugetpush.rb +25 -31
  62. data/lib/albacore/nugetupdate.rb +28 -29
  63. data/lib/albacore/nunit.rb +46 -0
  64. data/lib/albacore/nuspec.rb +79 -77
  65. data/lib/albacore/output.rb +77 -80
  66. data/lib/albacore/plink.rb +35 -32
  67. data/lib/albacore/specflow.rb +30 -0
  68. data/lib/albacore/sqlcmd.rb +46 -61
  69. data/lib/albacore/support/platform.rb +25 -0
  70. data/lib/albacore/unzip.rb +42 -34
  71. data/lib/albacore/version.rb +1 -1
  72. data/lib/albacore/xbuild.rb +25 -38
  73. data/lib/albacore/xunit.rb +44 -0
  74. data/lib/albacore/zipdirectory.rb +106 -107
  75. data/spec/albacoremodel_spec.rb +52 -53
  76. data/spec/aspnetcompiler_spec.rb +84 -0
  77. data/spec/{support/TestSolution/TestSolution/Properties → assemblyinfo}/AssemblyInfo.cs +36 -36
  78. data/spec/assemblyinfo_spec.rb +209 -477
  79. data/spec/attrmethods_spec.rb +135 -136
  80. data/spec/config_spec.rb +32 -34
  81. data/spec/createtask_spec.rb +234 -237
  82. data/spec/csc_spec.rb +86 -253
  83. data/spec/docu_spec.rb +31 -109
  84. data/spec/exec_spec.rb +25 -45
  85. data/spec/fluentmigrator_spec.rb +88 -0
  86. data/spec/ilmerge_spec.rb +21 -79
  87. data/spec/msbuild_spec.rb +55 -287
  88. data/spec/mspec_spec.rb +30 -28
  89. data/spec/mstest_spec.rb +35 -0
  90. data/spec/nant_spec.rb +40 -110
  91. data/spec/nchurn_spec.rb +80 -75
  92. data/spec/ncoverconsole_spec.rb +80 -353
  93. data/spec/ncoverreport_spec.rb +139 -619
  94. data/spec/ndepend_spec.rb +26 -72
  95. data/spec/netversion_spec.rb +51 -53
  96. data/spec/nugetinstall_spec.rb +59 -47
  97. data/spec/nugetpack_spec.rb +49 -0
  98. data/spec/nugetpush_spec.rb +39 -0
  99. data/spec/nugetupdate_spec.rb +49 -42
  100. data/spec/nunit_spec.rb +35 -0
  101. data/spec/{support/nuspec → nuspec}/nuspec.xsd +0 -0
  102. data/spec/nuspec_spec.rb +74 -127
  103. data/spec/output/bar/bar.txt +0 -0
  104. data/spec/output/baz.txt +0 -0
  105. data/spec/output/erb.txt +1 -0
  106. data/spec/output/foo/foo/foo.txt +0 -0
  107. data/spec/output_spec.rb +67 -147
  108. data/spec/patch/system_patch.rb +12 -0
  109. data/spec/platform_spec.rb +15 -0
  110. data/spec/plink_spec.rb +56 -62
  111. data/spec/runcommand_spec.rb +92 -94
  112. data/spec/spec_helper.rb +20 -16
  113. data/spec/specflow_spec.rb +30 -0
  114. data/spec/sqlcmd_spec.rb +66 -334
  115. data/spec/unzip_spec.rb +1 -2
  116. data/spec/xbuild_spec.rb +40 -15
  117. data/spec/xunit_spec.rb +30 -200
  118. data/spec/yaml/test.yml +3 -0
  119. data/spec/yamlconfig_spec.rb +53 -49
  120. data/spec/zip/baz.txt +0 -0
  121. data/spec/zip/foo/bar/bar.txt +0 -0
  122. data/spec/zip/foo/foo.txt +0 -0
  123. data/spec/zip_spec.rb +63 -187
  124. metadata +78 -1098
  125. checksums.yaml +0 -7
  126. data/.rvmrc +0 -1
  127. data/lib/albacore/config/fluentmigratorrunnerconfig.rb +0 -15
  128. data/lib/albacore/config/msdeployconfig.rb +0 -15
  129. data/lib/albacore/config/mspectestrunnerconfig.rb +0 -15
  130. data/lib/albacore/config/mstesttestrunnerconfig.rb +0 -15
  131. data/lib/albacore/config/nugetpublishconfig.rb +0 -19
  132. data/lib/albacore/config/nunittestrunnerconfig.rb +0 -14
  133. data/lib/albacore/config/specflowreportconfig.rb +0 -24
  134. data/lib/albacore/config/vssgetconfig.rb +0 -14
  135. data/lib/albacore/config/xunittestrunnerconfig.rb +0 -15
  136. data/lib/albacore/fluentmigratorrunner.rb +0 -52
  137. data/lib/albacore/msdeploy.rb +0 -122
  138. data/lib/albacore/mspectestrunner.rb +0 -50
  139. data/lib/albacore/mstesttestrunner.rb +0 -43
  140. data/lib/albacore/nugetpublish.rb +0 -47
  141. data/lib/albacore/nunittestrunner.rb +0 -41
  142. data/lib/albacore/specflowreport.rb +0 -62
  143. data/lib/albacore/support/supportlinux.rb +0 -21
  144. data/lib/albacore/vssget.rb +0 -44
  145. data/lib/albacore/xunittestrunner.rb +0 -56
  146. data/samples/Rakefile +0 -154
  147. data/spec/README.md +0 -9
  148. data/spec/assemblyinfo_contexts.rb +0 -52
  149. data/spec/fluentmigratorrunner_spec.rb +0 -263
  150. data/spec/msdeploy_spec.rb +0 -124
  151. data/spec/mstesttestrunner_spec.rb +0 -144
  152. data/spec/nunittestrunner_spec.rb +0 -115
  153. data/spec/patches/docu_patch.rb +0 -13
  154. data/spec/patches/fail_patch.rb +0 -9
  155. data/spec/patches/system_patch.rb +0 -20
  156. data/spec/spec.opts +0 -1
  157. data/spec/specflowreport_spec.rb +0 -143
  158. data/spec/support/AssemblyInfo/AssemblyInfo.test +0 -6
  159. data/spec/support/AssemblyInfo/AssemblyInfoInput.test +0 -9
  160. data/spec/support/AssemblyInfo/assemblyinfo.yml +0 -2
  161. data/spec/support/CodeCoverage/mspec/assemblies/Machine.Specifications.dll +0 -0
  162. data/spec/support/CodeCoverage/mspec/assemblies/TestSolution.MSpecTests.dll +0 -0
  163. data/spec/support/CodeCoverage/mspec/assemblies/TestSolution.dll +0 -0
  164. data/spec/support/CodeCoverage/mspec/assemblies/nunit.framework.dll +0 -0
  165. data/spec/support/CodeCoverage/mstest/TestSolution.MSTestTests.NET40.dll +0 -0
  166. data/spec/support/CodeCoverage/mstest/TestSolution.MSTestTests.dll +0 -0
  167. data/spec/support/CodeCoverage/nunit/assemblies/TestSolution.Tests.dll +0 -0
  168. data/spec/support/CodeCoverage/nunit/assemblies/TestSolution.dll +0 -0
  169. data/spec/support/CodeCoverage/nunit/assemblies/nunit.framework.dll +0 -0
  170. data/spec/support/CodeCoverage/nunit/assemblies/with spaces/TestSolution.Tests.dll +0 -0
  171. data/spec/support/CodeCoverage/nunit/assemblies/with spaces/TestSolution.dll +0 -0
  172. data/spec/support/CodeCoverage/nunit/assemblies/with spaces/nunit.framework.dll +0 -0
  173. data/spec/support/CodeCoverage/nunit/failing_assemblies/TestSolution.FailingTests.dll +0 -0
  174. data/spec/support/CodeCoverage/nunit/failing_assemblies/nunit.framework.dll +0 -0
  175. data/spec/support/CodeCoverage/report/coverage.xml +0 -4578
  176. data/spec/support/CodeCoverage/xunit/assemblies/TestSolution.XUnitTests.dll +0 -0
  177. data/spec/support/CodeCoverage/xunit/assemblies/TestSolution.dll +0 -0
  178. data/spec/support/CodeCoverage/xunit/assemblies/xunit.dll +0 -0
  179. data/spec/support/CodeCoverage/xunit/assemblies/xunit.xml +0 -2604
  180. data/spec/support/FluentMigrator/FluentMigrator.dll +0 -0
  181. data/spec/support/FluentMigrator/TestSolution.FluentMigrator.dll +0 -0
  182. data/spec/support/SpecFlow/TechTalk.SpecFlow.dll +0 -0
  183. data/spec/support/SpecFlow/TestSolution.SpecFlow.dll +0 -0
  184. data/spec/support/SpecFlow/TestSolution.SpecFlow.pdb +0 -0
  185. data/spec/support/SpecFlow/TestSolution.dll +0 -0
  186. data/spec/support/SpecFlow/TestSolution.pdb +0 -0
  187. data/spec/support/SpecFlow/nunit.framework.dll +0 -0
  188. data/spec/support/TestSolution/LocalTestRun.testrunconfig +0 -5
  189. data/spec/support/TestSolution/NDependProject.xml +0 -315
  190. data/spec/support/TestSolution/TestSolution.5.0.ReSharper.user +0 -27
  191. data/spec/support/TestSolution/TestSolution.FailingTests/FailingTestFixture.cs +0 -19
  192. data/spec/support/TestSolution/TestSolution.FailingTests/Properties/AssemblyInfo.cs +0 -36
  193. data/spec/support/TestSolution/TestSolution.FailingTests/TestSolution.FailingTests.csproj +0 -101
  194. data/spec/support/TestSolution/TestSolution.FluentMigrator/M001_SampleMigration.cs +0 -19
  195. data/spec/support/TestSolution/TestSolution.FluentMigrator/Properties/AssemblyInfo.cs +0 -36
  196. data/spec/support/TestSolution/TestSolution.FluentMigrator/TestSolution.FluentMigrator.csproj +0 -101
  197. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy.sln +0 -20
  198. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/About.aspx +0 -13
  199. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/About.aspx.cs +0 -17
  200. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/About.aspx.designer.cs +0 -17
  201. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/ChangePassword.aspx +0 -60
  202. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/ChangePassword.aspx.cs +0 -17
  203. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/ChangePassword.aspx.designer.cs +0 -26
  204. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/ChangePasswordSuccess.aspx +0 -13
  205. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/ChangePasswordSuccess.aspx.cs +0 -17
  206. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/ChangePasswordSuccess.aspx.designer.cs +0 -17
  207. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Login.aspx +0 -49
  208. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Login.aspx.cs +0 -17
  209. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Login.aspx.designer.cs +0 -35
  210. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Register.aspx +0 -75
  211. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Register.aspx.cs +0 -32
  212. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Register.aspx.designer.cs +0 -35
  213. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Account/Web.config +0 -18
  214. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Default.aspx +0 -17
  215. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Default.aspx.cs +0 -17
  216. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Default.aspx.designer.cs +0 -17
  217. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Global.asax +0 -1
  218. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Global.asax.cs +0 -47
  219. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Properties/AssemblyInfo.cs +0 -35
  220. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Scripts/jquery-1.4.1-vsdoc.js +0 -8061
  221. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Scripts/jquery-1.4.1.js +0 -6111
  222. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Scripts/jquery-1.4.1.min.js +0 -167
  223. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Site.Master +0 -51
  224. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Site.Master.cs +0 -17
  225. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Site.Master.designer.cs +0 -71
  226. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Styles/Site.css +0 -294
  227. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/TestSolution.MSDeploy.Publish.xml +0 -2
  228. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/TestSolution.MSDeploy.csproj +0 -163
  229. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Web.Debug.config +0 -30
  230. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Web.Release.config +0 -31
  231. data/spec/support/TestSolution/TestSolution.MSDeploy/TestSolution.MSDeploy/Web.config +0 -52
  232. data/spec/support/TestSolution/TestSolution.MSTestTests.NET40/Properties/AssemblyInfo.cs +0 -36
  233. data/spec/support/TestSolution/TestSolution.MSTestTests.NET40/TestSolution.MSTestTests.NET40.csproj +0 -53
  234. data/spec/support/TestSolution/TestSolution.MSTestTests.NET40/Tests.cs +0 -20
  235. data/spec/support/TestSolution/TestSolution.MSTestTests/Properties/AssemblyInfo.cs +0 -35
  236. data/spec/support/TestSolution/TestSolution.MSTestTests/TestSolution.MSTestTests.csproj +0 -97
  237. data/spec/support/TestSolution/TestSolution.MSTestTests/Tests.cs +0 -20
  238. data/spec/support/TestSolution/TestSolution.MSpecTests/Properties/AssemblyInfo.cs +0 -36
  239. data/spec/support/TestSolution/TestSolution.MSpecTests/SomeSpecTest.cs +0 -18
  240. data/spec/support/TestSolution/TestSolution.MSpecTests/TestSolution.MSpecTests.csproj +0 -110
  241. data/spec/support/TestSolution/TestSolution.SpecFlow/OneFeature.feature +0 -8
  242. data/spec/support/TestSolution/TestSolution.SpecFlow/OneFeature.feature.cs +0 -73
  243. data/spec/support/TestSolution/TestSolution.SpecFlow/Properties/AssemblyInfo.cs +0 -36
  244. data/spec/support/TestSolution/TestSolution.SpecFlow/StepDefinition.cs +0 -30
  245. data/spec/support/TestSolution/TestSolution.SpecFlow/TestSolution.SpecFlow.csproj +0 -122
  246. data/spec/support/TestSolution/TestSolution.Tests/Properties/AssemblyInfo.cs +0 -36
  247. data/spec/support/TestSolution/TestSolution.Tests/SomeTestFixture.cs +0 -23
  248. data/spec/support/TestSolution/TestSolution.Tests/TestSolution.Tests.csproj +0 -107
  249. data/spec/support/TestSolution/TestSolution.XUnitTests/Class1.cs +0 -20
  250. data/spec/support/TestSolution/TestSolution.XUnitTests/FailingTestFixture.cs +0 -14
  251. data/spec/support/TestSolution/TestSolution.XUnitTests/Properties/AssemblyInfo.cs +0 -36
  252. data/spec/support/TestSolution/TestSolution.XUnitTests/TestSolution.XUnitTests.csproj +0 -108
  253. data/spec/support/TestSolution/TestSolution.build +0 -25
  254. data/spec/support/TestSolution/TestSolution.sln +0 -75
  255. data/spec/support/TestSolution/TestSolution.vsmdi +0 -6
  256. data/spec/support/TestSolution/TestSolution/Class1.cs +0 -17
  257. data/spec/support/TestSolution/TestSolution/TestSolution.csproj +0 -97
  258. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.MSBuild.dll +0 -0
  259. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.NAnt.dll +0 -0
  260. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.Runner.dll +0 -0
  261. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.Runner.pdb +0 -0
  262. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.Tests.dll +0 -0
  263. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.Tests.pdb +0 -0
  264. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.dll +0 -0
  265. data/spec/support/Tools/FluentMigrator-0.9/FluentMigrator.pdb +0 -0
  266. data/spec/support/Tools/FluentMigrator-0.9/Migrate.exe +0 -0
  267. data/spec/support/Tools/FluentMigrator-0.9/Migrate.exe.config +0 -6
  268. data/spec/support/Tools/FluentMigrator-0.9/Moq.dll +0 -0
  269. data/spec/support/Tools/FluentMigrator-0.9/Moq.xml +0 -3467
  270. data/spec/support/Tools/FluentMigrator-0.9/MySql.Data.dll +0 -0
  271. data/spec/support/Tools/FluentMigrator-0.9/NAnt.Core.dll +0 -0
  272. data/spec/support/Tools/FluentMigrator-0.9/NAnt.Core.xml +0 -14880
  273. data/spec/support/Tools/FluentMigrator-0.9/Oracle.DataAccess.dll +0 -0
  274. data/spec/support/Tools/FluentMigrator-0.9/System.Data.SQLite.DLL +0 -0
  275. data/spec/support/Tools/FluentMigrator-0.9/log4net.dll +0 -0
  276. data/spec/support/Tools/FluentMigrator-0.9/nunit.framework.dll +0 -0
  277. data/spec/support/Tools/FluentMigrator-0.9/nunit.should.dll +0 -0
  278. data/spec/support/Tools/FluentMigrator-0.9/testscript.sql +0 -1
  279. data/spec/support/Tools/MSTest-2008/MSTest.exe +0 -0
  280. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.CommandLine.dll +0 -0
  281. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.Common.dll +0 -0
  282. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.ControllerObject.dll +0 -0
  283. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.ExecutionCommon.dll +0 -0
  284. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.TMI.dll +0 -0
  285. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter.dll +0 -0
  286. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.AssemblyResolver.dll +0 -0
  287. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.ObjectModel.dll +0 -0
  288. data/spec/support/Tools/MSTest-2008/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip.dll +0 -0
  289. data/spec/support/Tools/MSTest-2010/MSTest.exe +0 -0
  290. data/spec/support/Tools/MSTest-2010/MSTest.exe.config +0 -31
  291. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.AgentObject.dll +0 -0
  292. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.AgentProcessManager.dll +0 -0
  293. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CMI.dll +0 -0
  294. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CheckinPolicies.dll +0 -0
  295. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CodeCoverage.dll +0 -0
  296. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CodedUITest.Controls.dll +0 -0
  297. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CodedUITestFramework.dll +0 -0
  298. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CodedUITestPackage.dll +0 -0
  299. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.CommandLine.dll +0 -0
  300. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Common.dll +0 -0
  301. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Controller.SpooledJob.dll +0 -0
  302. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.ControllerObject.dll +0 -0
  303. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.DataCollectionAgentObject.dll +0 -0
  304. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.ExecutionCommon.dll +0 -0
  305. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.HostAdapters.ASPNETAdapter.dll +0 -0
  306. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.HostAdapters.ASPNETAgent.dll +0 -0
  307. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Linking.dll +0 -0
  308. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTest.dll +0 -0
  309. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestExcelAddIn.dll +0 -0
  310. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestExcelAddIn.dll.manifest +0 -296
  311. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestExcelAddIn.vsto +0 -150
  312. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestExcelCommon.dll +0 -0
  313. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestExcelCommon.tlb +0 -0
  314. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestExec.dll +0 -0
  315. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestFramework.dll +0 -0
  316. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestPackage.dll +0 -0
  317. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.LoadTestUI.dll +0 -0
  318. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.NICServices.dll +0 -0
  319. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.NetworkEmulation.dll +0 -0
  320. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.OperationalStore.ClientHelper.dll +0 -0
  321. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.RecorderBar.dll +0 -0
  322. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.RecorderBarBHO100.dll +0 -0
  323. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Resource.dll +0 -0
  324. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Sqm.dll +0 -0
  325. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.TMI.dll +0 -0
  326. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.TestCaseManagement.dll +0 -0
  327. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.GenericTest.Adapter.dll +0 -0
  328. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.GenericTest.ObjectModel.dll +0 -0
  329. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.GenericTest.Tip.dll +0 -0
  330. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.ManualTest.Adapter.dll +0 -0
  331. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.ManualTest.ObjectModel.dll +0 -0
  332. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.ManualTest.Tip.dll +0 -0
  333. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.OrderedTest.Adapter.dll +0 -0
  334. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.OrderedTest.ObjectModel.dll +0 -0
  335. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.OrderedTest.Tip.dll +0 -0
  336. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.TuipPackage.dll +0 -0
  337. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter.dll +0 -0
  338. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.AssemblyResolver.dll +0 -0
  339. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.ObjectModel.dll +0 -0
  340. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip.dll +0 -0
  341. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Tips.WebLoadTest.Tip.dll +0 -0
  342. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll +0 -0
  343. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Vsip.dll +0 -0
  344. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.WarehouseCommon.dll +0 -0
  345. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.WebTestFramework.dll +0 -0
  346. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.WebTestPlayback.dll +0 -0
  347. data/spec/support/Tools/MSTest-2010/Microsoft.VisualStudio.QualityTools.Wizard.TestProjectWizards.dll +0 -0
  348. data/spec/support/Tools/MSTest-2010/mstest.reg +0 -0
  349. data/spec/support/Tools/Machine.Specifications-0.5.3/lib/Machine.Specifications.TDNetRunner.dll +0 -0
  350. data/spec/support/Tools/Machine.Specifications-0.5.3/lib/Machine.Specifications.dll +0 -0
  351. data/spec/support/Tools/Machine.Specifications-0.5.3/lib/Machine.Specifications.dll.tdnet +0 -5
  352. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/CommandLine.dll +0 -0
  353. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/CommandLine.xml +0 -504
  354. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.4.1.bat +0 -5
  355. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.4.5.bat +0 -5
  356. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.5.0 - VS2008.bat +0 -5
  357. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.5.0 - VS2010.bat +0 -5
  358. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.5.1 - VS2008.bat +0 -5
  359. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.5.1 - VS2010.bat +0 -5
  360. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.6.0 - VS2008.bat +0 -5
  361. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.6.0 - VS2010.bat +0 -5
  362. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.6.1 - VS2008.bat +0 -5
  363. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallResharperRunner.6.1 - VS2010.bat +0 -5
  364. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallTDNetRunner.bat +0 -16
  365. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/InstallTDNetRunnerSilent.bat +0 -16
  366. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/License.txt +0 -54
  367. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.GallioAdapter.3.1.dll +0 -0
  368. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.GallioAdapter.plugin +0 -43
  369. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.ReSharperRunner.4.1.dll +0 -0
  370. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.ReSharperRunner.4.5.dll +0 -0
  371. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.ReSharperRunner.5.0.dll +0 -0
  372. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.ReSharperRunner.5.1.dll +0 -0
  373. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.ReSharperRunner.6.0.dll +0 -0
  374. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.ReSharperRunner.6.1.dll +0 -0
  375. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.Reporting.Templates.dll +0 -0
  376. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.Reporting.dll +0 -0
  377. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.SeleniumSupport.dll +0 -0
  378. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.TDNetRunner.dll +0 -0
  379. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.WatinSupport.dll +0 -0
  380. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.dll +0 -0
  381. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Machine.Specifications.dll.tdnet +0 -5
  382. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/Spark.dll +0 -0
  383. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/TestDriven.Framework.dll +0 -0
  384. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/install.ps1 +0 -6
  385. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/mspec-clr4.exe +0 -0
  386. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/mspec-clr4.exe.config +0 -6
  387. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/mspec-x86-clr4.exe +0 -0
  388. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/mspec-x86-clr4.exe.config +0 -6
  389. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/mspec-x86.exe +0 -0
  390. data/spec/support/Tools/Machine.Specifications-0.5.3/tools/mspec.exe +0 -0
  391. data/spec/support/Tools/NAnt-0.85/COPYING.txt +0 -340
  392. data/spec/support/Tools/NAnt-0.85/README.txt +0 -144
  393. data/spec/support/Tools/NChurn-v0.4/LICENSE.txt +0 -133
  394. data/spec/support/Tools/NChurn-v0.4/NChurn.exe +0 -0
  395. data/spec/support/Tools/NChurn-v0.4/README.md +0 -171
  396. data/spec/support/Tools/NChurn-v0.4/VERSION +0 -1
  397. data/spec/support/Tools/NChurn-v0.4/churn-0.4.0.0.txt +0 -178
  398. data/spec/support/Tools/NCover-v3.3/ActiproEULA.hml +0 -287
  399. data/spec/support/Tools/NCover-v3.3/ActiproSoftware.Shared.Wpf30.dll +0 -0
  400. data/spec/support/Tools/NCover-v3.3/ActiproSoftware.SyntaxEditor.Addons.DotNet.Wpf30.dll +0 -0
  401. data/spec/support/Tools/NCover-v3.3/ActiproSoftware.SyntaxEditor.Wpf30.dll +0 -0
  402. data/spec/support/Tools/NCover-v3.3/ActiproSoftware.Text.Net20.dll +0 -0
  403. data/spec/support/Tools/NCover-v3.3/AdminBootstrapper.exe +0 -0
  404. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/MSBuildNCoverExample.proj +0 -237
  405. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/MSBuildReportingExample.proj +0 -224
  406. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/NAntNCoverExample.build +0 -241
  407. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/NAntReportingExample.build +0 -218
  408. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/NCover.MSBuildTasks.dll +0 -0
  409. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/NCover.NAntTasks.dll +0 -0
  410. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/NCoverExplorer.MSBuildTasks.dll +0 -0
  411. data/spec/support/Tools/NCover-v3.3/Build Task Plugins/NCoverExplorer.NAntTasks.dll +0 -0
  412. data/spec/support/Tools/NCover-v3.3/CC.Net/NCoverReporting30.xsl +0 -2313
  413. data/spec/support/Tools/NCover-v3.3/CC.Net/dashboard.config +0 -55
  414. data/spec/support/Tools/NCover-v3.3/CC.Net/excanvas.js +0 -35
  415. data/spec/support/Tools/NCover-v3.3/CC.Net/g.png +0 -0
  416. data/spec/support/Tools/NCover-v3.3/CC.Net/jquery-1.3.2.min.js +0 -19
  417. data/spec/support/Tools/NCover-v3.3/CC.Net/r.png +0 -0
  418. data/spec/support/Tools/NCover-v3.3/CC.Net/readme.txt +0 -51
  419. data/spec/support/Tools/NCover-v3.3/CC.Net/trends.js +0 -184
  420. data/spec/support/Tools/NCover-v3.3/CC.Net/y.png +0 -0
  421. data/spec/support/Tools/NCover-v3.3/MSVCM90.dll +0 -0
  422. data/spec/support/Tools/NCover-v3.3/MSVCP90.dll +0 -0
  423. data/spec/support/Tools/NCover-v3.3/MSVCR90.dll +0 -0
  424. data/spec/support/Tools/NCover-v3.3/Microsoft.VC90.CRT.manifest +0 -13
  425. data/spec/support/Tools/NCover-v3.3/Mindscape.LightSpeed.Linq.dll +0 -0
  426. data/spec/support/Tools/NCover-v3.3/Mindscape.LightSpeed.dll +0 -0
  427. data/spec/support/Tools/NCover-v3.3/NCover.Console.exe +0 -0
  428. data/spec/support/Tools/NCover-v3.3/NCover.Console.exe.config +0 -55
  429. data/spec/support/Tools/NCover-v3.3/NCover.Data.x86.dll +0 -0
  430. data/spec/support/Tools/NCover-v3.3/NCover.Explorer.Framework.dll +0 -0
  431. data/spec/support/Tools/NCover-v3.3/NCover.Explorer.exe +0 -0
  432. data/spec/support/Tools/NCover-v3.3/NCover.Explorer.exe.config +0 -16
  433. data/spec/support/Tools/NCover-v3.3/NCover.Framework.XmlSerializers.dll +0 -0
  434. data/spec/support/Tools/NCover-v3.3/NCover.Framework.dll +0 -0
  435. data/spec/support/Tools/NCover-v3.3/NCover.Interfaces.Core.dll +0 -0
  436. data/spec/support/Tools/NCover-v3.3/NCover.Interfaces.dll +0 -0
  437. data/spec/support/Tools/NCover-v3.3/NCover.Legacy.Configuration.dll +0 -0
  438. data/spec/support/Tools/NCover-v3.3/NCover.Lib.x86.dll +0 -0
  439. data/spec/support/Tools/NCover-v3.3/NCover.Registration.exe +0 -0
  440. data/spec/support/Tools/NCover-v3.3/NCover.Reporting.exe +0 -0
  441. data/spec/support/Tools/NCover-v3.3/NCover.Runner.dll +0 -0
  442. data/spec/support/Tools/NCover-v3.3/NCover.UpConvert.exe +0 -0
  443. data/spec/support/Tools/NCover-v3.3/NCover.Utilities.dll +0 -0
  444. data/spec/support/Tools/NCover-v3.3/NCoverEULA.pdf +0 -0
  445. data/spec/support/Tools/NCover-v3.3/NCoverExplorer.Console.exe +0 -0
  446. data/spec/support/Tools/NCover-v3.3/ReportingExample.config +0 -213
  447. data/spec/support/Tools/NCover-v3.3/System.Data.SQLite.dll +0 -0
  448. data/spec/support/Tools/NDepend-v2.12/EULA_NDepend.txt +0 -94
  449. data/spec/support/Tools/NDepend-v2.12/Lib/DevExpress.Data.v8.2.dll +0 -0
  450. data/spec/support/Tools/NDepend-v2.12/Lib/DevExpress.OfficeSkins.v8.2.dll +0 -0
  451. data/spec/support/Tools/NDepend-v2.12/Lib/DevExpress.Utils.v8.2.dll +0 -0
  452. data/spec/support/Tools/NDepend-v2.12/Lib/DevExpress.XtraBars.v8.2.dll +0 -0
  453. data/spec/support/Tools/NDepend-v2.12/Lib/DevExpress.XtraEditors.v8.2.dll +0 -0
  454. data/spec/support/Tools/NDepend-v2.12/Lib/DevExpress.XtraNavBar.v8.2.dll +0 -0
  455. data/spec/support/Tools/NDepend-v2.12/Lib/EnvDTE.dll +0 -0
  456. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.Msagl.Drawing.dll +0 -0
  457. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.Msagl.GraphViewerGdi.dll +0 -0
  458. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.Msagl.GraphViewerGdi.dll.config +0 -3
  459. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.Msagl.dll +0 -0
  460. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.VisualStudio.OLE.Interop.dll +0 -0
  461. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.VisualStudio.Shell.Interop.dll +0 -0
  462. data/spec/support/Tools/NDepend-v2.12/Lib/Microsoft.VisualStudio.Shell.dll +0 -0
  463. data/spec/support/Tools/NDepend-v2.12/Lib/Mono.Cecil.Pdb.dll +0 -0
  464. data/spec/support/Tools/NDepend-v2.12/Lib/Mono.Cecil.dll +0 -0
  465. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.AddIn.dll +0 -0
  466. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.Analysis.dll +0 -0
  467. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.CQL.dll +0 -0
  468. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.Framework.dll +0 -0
  469. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.Platform.DotNet.dll +0 -0
  470. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.Skins.dll +0 -0
  471. data/spec/support/Tools/NDepend-v2.12/Lib/NDepend.UI.dll +0 -0
  472. data/spec/support/Tools/NDepend-v2.12/Lib/msvcp71.dll +0 -0
  473. data/spec/support/Tools/NDepend-v2.12/Lib/msvcr71.dll +0 -0
  474. data/spec/support/Tools/NDepend-v2.12/NDepend.Console.exe +0 -0
  475. data/spec/support/Tools/NDepend-v2.12/NDepend.Console.exe.config +0 -8
  476. data/spec/support/Tools/NDepend-v2.12/QuickStartTutorial_NDepend.txt +0 -152
  477. data/spec/support/Tools/NDepend-v2.12/VisualNDepend.exe +0 -0
  478. data/spec/support/Tools/NUnit-v2.5/NUnitFitTests.html +0 -277
  479. data/spec/support/Tools/NUnit-v2.5/NUnitTests.config +0 -84
  480. data/spec/support/Tools/NUnit-v2.5/NUnitTests.nunit +0 -14
  481. data/spec/support/Tools/NUnit-v2.5/TestResult.xml +0 -32
  482. data/spec/support/Tools/NUnit-v2.5/agent.conf +0 -4
  483. data/spec/support/Tools/NUnit-v2.5/agent.log.conf +0 -18
  484. data/spec/support/Tools/NUnit-v2.5/clr.bat +0 -96
  485. data/spec/support/Tools/NUnit-v2.5/framework/nunit.framework.dll +0 -0
  486. data/spec/support/Tools/NUnit-v2.5/framework/nunit.framework.xml +0 -10088
  487. data/spec/support/Tools/NUnit-v2.5/framework/nunit.mocks.dll +0 -0
  488. data/spec/support/Tools/NUnit-v2.5/framework/pnunit.framework.dll +0 -0
  489. data/spec/support/Tools/NUnit-v2.5/launcher.log.conf +0 -18
  490. data/spec/support/Tools/NUnit-v2.5/lib/Failure.png +0 -0
  491. data/spec/support/Tools/NUnit-v2.5/lib/Ignored.png +0 -0
  492. data/spec/support/Tools/NUnit-v2.5/lib/Inconclusive.png +0 -0
  493. data/spec/support/Tools/NUnit-v2.5/lib/Skipped.png +0 -0
  494. data/spec/support/Tools/NUnit-v2.5/lib/Success.png +0 -0
  495. data/spec/support/Tools/NUnit-v2.5/lib/fit.dll +0 -0
  496. data/spec/support/Tools/NUnit-v2.5/lib/log4net.dll +0 -0
  497. data/spec/support/Tools/NUnit-v2.5/lib/nunit-console-runner.dll +0 -0
  498. data/spec/support/Tools/NUnit-v2.5/lib/nunit-gui-runner.dll +0 -0
  499. data/spec/support/Tools/NUnit-v2.5/lib/nunit.core.dll +0 -0
  500. data/spec/support/Tools/NUnit-v2.5/lib/nunit.core.interfaces.dll +0 -0
  501. data/spec/support/Tools/NUnit-v2.5/lib/nunit.fixtures.dll +0 -0
  502. data/spec/support/Tools/NUnit-v2.5/lib/nunit.uiexception.dll +0 -0
  503. data/spec/support/Tools/NUnit-v2.5/lib/nunit.uikit.dll +0 -0
  504. data/spec/support/Tools/NUnit-v2.5/lib/nunit.util.dll +0 -0
  505. data/spec/support/Tools/NUnit-v2.5/nunit-agent.exe +0 -0
  506. data/spec/support/Tools/NUnit-v2.5/nunit-agent.exe.config +0 -87
  507. data/spec/support/Tools/NUnit-v2.5/nunit-console-x86.exe +0 -0
  508. data/spec/support/Tools/NUnit-v2.5/nunit-console-x86.exe.config +0 -87
  509. data/spec/support/Tools/NUnit-v2.5/nunit-console.exe +0 -0
  510. data/spec/support/Tools/NUnit-v2.5/nunit-console.exe.config +0 -87
  511. data/spec/support/Tools/NUnit-v2.5/nunit-x86.exe +0 -0
  512. data/spec/support/Tools/NUnit-v2.5/nunit-x86.exe.config +0 -95
  513. data/spec/support/Tools/NUnit-v2.5/nunit.exe +0 -0
  514. data/spec/support/Tools/NUnit-v2.5/nunit.exe.config +0 -95
  515. data/spec/support/Tools/NUnit-v2.5/nunit.framework.dll +0 -0
  516. data/spec/support/Tools/NUnit-v2.5/pnunit-agent.exe +0 -0
  517. data/spec/support/Tools/NUnit-v2.5/pnunit-agent.exe.config +0 -87
  518. data/spec/support/Tools/NUnit-v2.5/pnunit-launcher.exe +0 -0
  519. data/spec/support/Tools/NUnit-v2.5/pnunit-launcher.exe.config +0 -87
  520. data/spec/support/Tools/NUnit-v2.5/pnunit.framework.dll +0 -0
  521. data/spec/support/Tools/NUnit-v2.5/pnunit.tests.dll +0 -0
  522. data/spec/support/Tools/NUnit-v2.5/runFile.exe +0 -0
  523. data/spec/support/Tools/NUnit-v2.5/runFile.exe.config +0 -43
  524. data/spec/support/Tools/NUnit-v2.5/runpnunit.bat +0 -2
  525. data/spec/support/Tools/NUnit-v2.5/test.conf +0 -24
  526. data/spec/support/Tools/PartCover-v2.3/Interop.PartCover.dll +0 -0
  527. data/spec/support/Tools/PartCover-v2.3/PartCover Browser Manual.rtf +0 -28853
  528. data/spec/support/Tools/PartCover-v2.3/PartCover Console Manual.rtf +0 -203
  529. data/spec/support/Tools/PartCover-v2.3/PartCover.Browser.Api.dll +0 -0
  530. data/spec/support/Tools/PartCover-v2.3/PartCover.Browser.exe +0 -0
  531. data/spec/support/Tools/PartCover-v2.3/PartCover.Browser.exe.config +0 -51
  532. data/spec/support/Tools/PartCover-v2.3/PartCover.CorDriver.dll +0 -0
  533. data/spec/support/Tools/PartCover-v2.3/PartCover.Framework.dll +0 -0
  534. data/spec/support/Tools/PartCover-v2.3/PartCover.exe +0 -0
  535. data/spec/support/Tools/PartCover-v2.3/PartCover.exe.config +0 -4
  536. data/spec/support/Tools/PartCover-v2.3/PartViewer.dll +0 -0
  537. data/spec/support/Tools/PartCover-v2.3/app.ico +0 -0
  538. data/spec/support/Tools/PartCover-v2.3/log4net.dll +0 -0
  539. data/spec/support/Tools/PartCover-v2.3/xslt/Report By Assembly.xslt +0 -54
  540. data/spec/support/Tools/PartCover-v2.3/xslt/Report By Class.xslt +0 -52
  541. data/spec/support/Tools/SpecFlow/Antlr3.Runtime.dll +0 -0
  542. data/spec/support/Tools/SpecFlow/Interop.SHDocVw.dll +0 -0
  543. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.Generator.dll +0 -0
  544. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.Parser.dll +0 -0
  545. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.Reporting.dll +0 -0
  546. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.VsIntegration.dll +0 -0
  547. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.dll +0 -0
  548. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.targets +0 -58
  549. data/spec/support/Tools/SpecFlow/TechTalk.SpecFlow.tasks +0 -17
  550. data/spec/support/Tools/SpecFlow/changelog.txt +0 -50
  551. data/spec/support/Tools/SpecFlow/specflow.exe +0 -0
  552. data/spec/support/Tools/XUnit-v1.9/EULA.txt +0 -29
  553. data/spec/support/Tools/XUnit-v1.9/HTML.xslt +0 -126
  554. data/spec/support/Tools/XUnit-v1.9/NUnitXml.xslt +0 -121
  555. data/spec/support/Tools/XUnit-v1.9/xunit.console.clr4.exe +0 -0
  556. data/spec/support/Tools/XUnit-v1.9/xunit.console.clr4.exe.config +0 -21
  557. data/spec/support/Tools/XUnit-v1.9/xunit.console.clr4.x86.exe +0 -0
  558. data/spec/support/Tools/XUnit-v1.9/xunit.console.clr4.x86.exe.config +0 -21
  559. data/spec/support/Tools/XUnit-v1.9/xunit.console.exe +0 -0
  560. data/spec/support/Tools/XUnit-v1.9/xunit.console.exe.config +0 -21
  561. data/spec/support/Tools/XUnit-v1.9/xunit.console.x86.exe +0 -0
  562. data/spec/support/Tools/XUnit-v1.9/xunit.console.x86.exe.config +0 -21
  563. data/spec/support/Tools/XUnit-v1.9/xunit.dll +0 -0
  564. data/spec/support/Tools/XUnit-v1.9/xunit.dll.tdnet +0 -5
  565. data/spec/support/Tools/XUnit-v1.9/xunit.extensions.dll +0 -0
  566. data/spec/support/Tools/XUnit-v1.9/xunit.extensions.xml +0 -805
  567. data/spec/support/Tools/XUnit-v1.9/xunit.gui.clr4.exe +0 -0
  568. data/spec/support/Tools/XUnit-v1.9/xunit.gui.clr4.x86.exe +0 -0
  569. data/spec/support/Tools/XUnit-v1.9/xunit.gui.exe +0 -0
  570. data/spec/support/Tools/XUnit-v1.9/xunit.gui.x86.exe +0 -0
  571. data/spec/support/Tools/XUnit-v1.9/xunit.installer.exe +0 -0
  572. data/spec/support/Tools/XUnit-v1.9/xunit.runner.msbuild.dll +0 -0
  573. data/spec/support/Tools/XUnit-v1.9/xunit.runner.tdnet.dll +0 -0
  574. data/spec/support/Tools/XUnit-v1.9/xunit.runner.utility.dll +0 -0
  575. data/spec/support/Tools/XUnit-v1.9/xunit.runner.utility.xml +0 -1212
  576. data/spec/support/Tools/XUnit-v1.9/xunit.xml +0 -2604
  577. data/spec/support/assemblyinfotester.rb +0 -52
  578. data/spec/support/csc/File1.cs +0 -9
  579. data/spec/support/csc/File2.cs +0 -9
  580. data/spec/support/csc/output/ignorethis.txt +0 -1
  581. data/spec/support/ironruby_validator.rb +0 -26
  582. data/spec/support/msbuildtestdata.rb +0 -32
  583. data/spec/support/nanttestdata.rb +0 -33
  584. data/spec/support/ncoverconsoletestdata.rb +0 -20
  585. data/spec/support/ncoverreporttestdata.rb +0 -26
  586. data/spec/support/nokogiri_validator.rb +0 -15
  587. data/spec/support/outputtestdata.rb +0 -13
  588. data/spec/support/test.yml +0 -4
  589. data/spec/support/yamlconfig/msbuild.yml +0 -5
  590. data/spec/support/yamlconfig/yaml_autoconfig_test.yml +0 -1
  591. data/spec/support/zip/files/subfolder/sub file.txt +0 -1
  592. data/spec/support/zip/files/testfile.txt +0 -1
  593. data/spec/support/ziptestdata.rb +0 -13
@@ -1,2313 +0,0 @@
1
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
2
- <xsl:output method="html" />
3
- <xsl:param name="reportnameoverride" />
4
-
5
- <!--This gets passed in from the transform so we are able to determine the type-->
6
- <xsl:variable name="root" select="//trendcoveragedata" />
7
- <xsl:variable name="reportType" select="//./params[@name = 'reporttype']/@value" />
8
- <xsl:variable name="date" select="//./params[@name = 'date']/@value" />
9
- <xsl:variable name="time" select="//./params[@name = 'time']/@value" />
10
- <xsl:variable name="fulltags" select="string(//./params[@name = 'ishtml']/@value) = '1'" />
11
-
12
- <!--
13
- Hide elements above what percent? The number must be between 0 and 1 and this is why we divide by 100 so we can use normal numbers
14
- The example below shows all data, if you changed atmostpercent to 20, only items between 0 and 20 would be displayed.
15
- -->
16
- <xsl:variable name="atleastpercent" select="0 div 100" />
17
- <xsl:variable name="atmostpercent" select="100 div 100" />
18
-
19
- <!--
20
- Possible values (symbol,branch)
21
- WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
22
- The string must be in single quotes or it will default to symbol
23
- WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
24
- -->
25
- <xsl:variable name="atleastpercenttype" select="'symbol'" />
26
- <!--<xsl:variable name="atleastpercenttype" select="'branch'" />-->
27
- <!--
28
- NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE
29
- The baseimagepath is set up for cc.net by default. You may remove this option or set your own
30
- path if you do not like /ccnet/images/ as the base.
31
- NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE
32
- -->
33
- <xsl:variable name="baseimagepath" xml:space="preserve"><xsl:choose>
34
- <xsl:when test="not ($fulltags)">/ccnet/images/</xsl:when>
35
- <xsl:otherwise></xsl:otherwise></xsl:choose></xsl:variable>
36
- <!--
37
- The width of the widest graph in pixels
38
- The Class in .8 of that and methods are .7
39
- -->
40
- <xsl:variable name="graphscale">75</xsl:variable>
41
- <xsl:variable name="projectstats" select="$root/stats[last()]"></xsl:variable>
42
- <xsl:variable name="execution" select="$root/execution[last()]"></xsl:variable>
43
- <xsl:variable name="acceptable" select="$execution/satisfactorycoveragethreshold"></xsl:variable>
44
- <xsl:variable name="acceptableFunction" select="$execution/satisfactoryfunctionthreshold"></xsl:variable>
45
- <xsl:variable name="reportName" xml:space="preserve"><xsl:choose>
46
- <xsl:when test="string($reportnameoverride) != ''"><xsl:value-of select="$reportnameoverride"/></xsl:when>
47
- <xsl:otherwise><xsl:choose>
48
- <xsl:when test="string(//./params[@name = 'reportname']/@value) != ''"><xsl:value-of select="//./params[@name = 'reportname']/@value" /></xsl:when>
49
- <xsl:otherwise><xsl:value-of select="$execution/projectname" /></xsl:otherwise></xsl:choose>
50
- </xsl:otherwise></xsl:choose></xsl:variable>
51
- <xsl:variable name="isFunctionReport" select="$reportType = 'MethodModule'
52
- or $reportType = 'MethodModuleNamespace'
53
- or $reportType = 'MethodModuleNamespaceClass'
54
- or $reportType = 'MethodModuleNamespaceClassMethod'
55
- or $reportType = 'MethodSourceCode'
56
- or $reportType = 'MethodSourceCodeClass'
57
- or $reportType = 'MethodSourceCodeClassMethod'
58
- or $reportType = 'MethodCCModuleClassFailedCoverageTop'
59
- or $reportType = 'MethodCCModuleClassCoverageTop'"/>
60
- <xsl:variable name="isDocumentReport" select="$reportType = 'SymbolSourceCode'
61
- or $reportType = 'SymbolSourceCodeClass'
62
- or $reportType = 'SymbolSourceCodeClassMethod'
63
- or $reportType = 'MethodSourceCode'
64
- or $reportType = 'MethodSourceCodeClass'
65
- or $reportType = 'MethodSourceCodeClassMethod'"/>
66
- <xsl:variable name="isDiffReport" select="$reportType = 'Diff'"/>
67
- <xsl:variable name="isTrendReport" select="$reportType = 'Trends'"/>
68
- <xsl:variable name="trendCoverageMetric" select="string(//./params[@name = 'trendcoveragemetric']/@value)" />
69
- <!--params(diffatleast=-.2)-->
70
- <xsl:variable name="diffAtLeast" xml:space="preserve"><xsl:choose><xsl:when test="string(//./params[@name = 'diffatleast']/@value) != '' and string(number(//./params[@name = 'diffatleast']/@value)) != 'NaN'"><xsl:value-of select="number(//./params[@name = 'diffatleast']/@value)" /></xsl:when><xsl:otherwise>0</xsl:otherwise></xsl:choose></xsl:variable>
71
- <!--params(showallitems=true)-->
72
- <xsl:variable name="showAllItems" select="translate(string(//./params[@name = 'showallitems']/@value),'TRUE','true') = 'true'
73
- or string(//./params[@name = 'showallitems']/@value) = '1'"/>
74
- <xsl:variable name="reportBranchPoints" select="$projectstats/@vbp" />
75
- <xsl:variable name="reportVisitCounts" select="$isFunctionReport and $projectstats/@svc" />
76
- <!--We have specific function CC reports that need the extra column-->
77
- <xsl:variable name="pointCCReport" select="$reportType = 'SymbolCCModuleClassFailedCoverageTop'
78
- or $reportType = 'SymbolCCModuleClassCoverageTop'" />
79
- <xsl:variable name="functionalCCReport" select="$reportType = 'SymbolCCModuleClassFailedCoverageTop'
80
- or $reportType = 'SymbolCCModuleClassCoverageTop'" />
81
- <xsl:variable name="ccnodeExists" select="$projectstats/@ccavg" />
82
- <xsl:variable name="ccdataExists" select="$projectstats/@ccavg > 0" />
83
- <xsl:variable name="trendsdataexist" select="count($projectstats/tp) > 0" />
84
- <xsl:variable name="reportCC" xml:space="preserve" select="($functionalCCReport and $ccdataExists)
85
- or ($projectstats/@ccavg and $ccdataExists and not ($isFunctionReport))" />
86
- <xsl:variable name="vcColumnCount" xml:space="preserve"><xsl:choose>
87
- <xsl:when test="$reportVisitCounts">2</xsl:when>
88
- <xsl:otherwise>0</xsl:otherwise></xsl:choose></xsl:variable>
89
- <xsl:variable name="ccClassCount" xml:space="preserve"><xsl:choose>
90
- <xsl:when test="$reportType = 'SymbolCCModuleClassFailedCoverageTop'">20</xsl:when>
91
- <xsl:when test="$reportType = 'SymbolCCModuleClassCoverageTop'">20</xsl:when>
92
- <xsl:otherwise>20</xsl:otherwise></xsl:choose></xsl:variable>
93
- <xsl:variable name="ccColumnCount" xml:space="preserve"><xsl:choose>
94
- <xsl:when test="$reportCC">1</xsl:when>
95
- <xsl:otherwise>0</xsl:otherwise></xsl:choose></xsl:variable>
96
- <xsl:variable name="tablecolumns" xml:space="preserve"><xsl:choose>
97
- <xsl:when test="$isDiffReport">16</xsl:when>
98
- <xsl:when test="$isTrendReport">6</xsl:when>
99
- <xsl:when test="not ($isFunctionReport) and $reportBranchPoints"><xsl:value-of select="9 + $ccColumnCount" /></xsl:when>
100
- <xsl:otherwise><xsl:value-of select="5 + $ccColumnCount + $vcColumnCount" /></xsl:otherwise></xsl:choose></xsl:variable>
101
- <xsl:variable name="reportTitle">
102
- <xsl:choose xml:space="preserve">
103
- <xsl:when test="$reportType = 'MethodModule'">Method Module</xsl:when>
104
- <xsl:when test="$reportType = 'MethodModuleNamespace'">Method Module and Namespace</xsl:when>
105
- <xsl:when test="$reportType = 'MethodModuleNamespaceClass'">Method Module, Namespace and Classes</xsl:when>
106
- <xsl:when test="$reportType = 'MethodModuleNamespaceClassMethod'">Method Module, Namespace, Class and Methods</xsl:when>
107
- <xsl:when test="$reportType = 'MethodSourceCode'">Method Source File</xsl:when>
108
- <xsl:when test="$reportType = 'MethodSourceCodeClass'">Method Source File and Class</xsl:when>
109
- <xsl:when test="$reportType = 'MethodSourceCodeClassMethod'">Method Source Code, Class and Methods</xsl:when>
110
- <xsl:when test="$reportType = 'SymbolModule'">Symbol Module</xsl:when>
111
- <xsl:when test="$reportType = 'SymbolModuleNamespace'">Symbol Module and Namespace</xsl:when>
112
- <xsl:when test="$reportType = 'SymbolModuleNamespaceClass'">Symbol Module, Namespace and Class</xsl:when>
113
- <xsl:when test="$reportType = 'SymbolModuleNamespaceClassMethod'">Symbol Module, Namespace, Class and Methods</xsl:when>
114
- <xsl:when test="$reportType = 'SymbolSourceCode'">Source Code</xsl:when>
115
- <xsl:when test="$reportType = 'SymbolSourceCodeClass'">Source Code and Class</xsl:when>
116
- <xsl:when test="$reportType = 'SymbolSourceCodeClassMethod'">Source Code, Class and Methods</xsl:when>
117
- <!--We may need to change this-->
118
- <xsl:when test="$reportType = 'SymbolCCModuleClassFailedCoverageTop'">
119
- Cyclomatic Complexity Coverage Top <xsl:value-of select="$ccClassCount" /> Failing Coverage
120
- </xsl:when>
121
- <xsl:when test="$reportType = 'SymbolCCModuleClassCoverageTop'">
122
- Cyclomatic Complexity Coverage Top <xsl:value-of select="$ccClassCount" />
123
- </xsl:when>
124
- <xsl:when test="$reportType = 'MethodCCModuleClassFailedCoverageTop'">
125
- Cyclomatic Complexity Function Coverage Top <xsl:value-of select="$ccClassCount" /> Failing Coverage
126
- </xsl:when>
127
- <xsl:when test="$reportType = 'MethodCCModuleClassCoverageTop'">
128
- Cyclomatic Complexity Function Coverage Top <xsl:value-of select="$ccClassCount" />
129
- </xsl:when>
130
- <xsl:when test="$reportType = 'Trends'">Trends Report</xsl:when>
131
- <xsl:when test="$reportType = 'Diff'">Diff Report</xsl:when>
132
- <xsl:otherwise>Unkown Report</xsl:otherwise>
133
- </xsl:choose>
134
- </xsl:variable>
135
- <xsl:variable name="vFilterStyle" select="//./params[@name = 'filterstyle']/@value" />
136
- <xsl:variable name="vSortStyle">
137
- <xsl:choose>
138
- <xsl:when test="$pointCCReport or $functionalCCReport">CC</xsl:when>
139
- <xsl:otherwise>
140
- <xsl:value-of select="//./params[@name = 'sortstyle']/@value" />
141
- </xsl:otherwise>
142
- </xsl:choose>
143
-
144
- </xsl:variable>
145
-
146
- <xsl:variable name="filterStyle">
147
- <xsl:choose>
148
- <xsl:when test="$vFilterStyle = 'HideFullyCovered'">Hide Fully Covered</xsl:when>
149
- <xsl:when test="$vFilterStyle = 'HideThresholdCovered'">Hide Threshold Covered</xsl:when>
150
- <xsl:when test="$vFilterStyle = 'HideUnvisited'">Hide Unvisited</xsl:when>
151
- <xsl:when test="$vFilterStyle = 'None'">None</xsl:when>
152
- <xsl:otherwise>Unknown</xsl:otherwise>
153
- </xsl:choose>
154
- </xsl:variable>
155
- <xsl:variable name="sortStyle">
156
- <xsl:choose>
157
- <xsl:when test="$vSortStyle = 'ClassLine'">Class Line</xsl:when>
158
- <xsl:when test="$vSortStyle = 'CoveragePercentageAscending'">Coverage Percentage Ascending</xsl:when>
159
- <xsl:when test="$vSortStyle = 'CoveragePercentageDescending'">Coverage Percentage Descending</xsl:when>
160
- <xsl:when test="$vSortStyle = 'FunctionCoverageAscending'">Function Coverage Ascending</xsl:when>
161
- <xsl:when test="$vSortStyle = 'FunctionCoverageDescending'">Function Coverage Descending</xsl:when>
162
- <xsl:when test="$vSortStyle = 'Name'">Name</xsl:when>
163
- <xsl:when test="$vSortStyle = 'UnvisitedSequencePointsAscending'">Unvisited Sequence Point Ascending</xsl:when>
164
- <xsl:when test="$vSortStyle = 'UnvisitedSequencePointsDescending'">Unvisited Sequence Point Descending</xsl:when>
165
- <xsl:when test="$vSortStyle = 'VisitCountAscending'">Visit Count Ascending</xsl:when>
166
- <xsl:when test="$vSortStyle = 'VisitCountDescending'">Visit Count Descending</xsl:when>
167
- <xsl:when test="$vSortStyle = 'CC'">Cyclomatic Complexity Descending</xsl:when>
168
- <xsl:otherwise>Unknown</xsl:otherwise>
169
- </xsl:choose>
170
- </xsl:variable>
171
- <xsl:template match="/" xml:space="preserve">
172
- <xsl:choose>
173
- <xsl:when test="$fulltags">
174
- <html>
175
- <head>
176
- <title>
177
- <xsl:value-of select="$reportTitle"/> - <xsl:value-of select="$filterStyle"/> - <xsl:value-of select="$sortStyle"/>
178
- </title>
179
- <xsl:comment>NCover 3.0 Template</xsl:comment>
180
- <xsl:comment>Generated by the Joe Feser joe@ncover.com on the NCover team and inspired by the original template by Grant Drake</xsl:comment>
181
- <xsl:call-template name="style" />
182
- </head>
183
- <body>
184
- <table class="coverageReportTable" cellpadding="2" cellspacing="0">
185
- <tbody>
186
- <xsl:apply-templates select="$root" />
187
- </tbody>
188
- </table>
189
- </body>
190
- </html>
191
- </xsl:when>
192
- <xsl:otherwise>
193
- <xsl:call-template name="style" />
194
- <xsl:apply-templates select="$root" />
195
- </xsl:otherwise>
196
- </xsl:choose>
197
- </xsl:template>
198
-
199
- <!-- Main Project Section -->
200
- <xsl:template match="trendcoveragedata">
201
- <xsl:variable name="threshold">
202
- <xsl:choose>
203
- <xsl:when test="$isFunctionReport">
204
- <xsl:value-of select="$acceptableFunction" />
205
- </xsl:when>
206
- <xsl:otherwise>
207
- <xsl:value-of select="$acceptable" />
208
- </xsl:otherwise>
209
- </xsl:choose>
210
- </xsl:variable>
211
- <xsl:variable name="unvisitedTitle">
212
- <xsl:choose>
213
- <xsl:when test="$isFunctionReport">U.V.</xsl:when>
214
- <xsl:otherwise>U.V.</xsl:otherwise>
215
- </xsl:choose>
216
- </xsl:variable>
217
- <xsl:variable name="excludedTitle">
218
- <xsl:choose>
219
- <xsl:when test="$isFunctionReport">Functions</xsl:when>
220
- <xsl:otherwise>SeqPts</xsl:otherwise>
221
- </xsl:choose>
222
- </xsl:variable>
223
- <xsl:variable name="coverageTitle">
224
- <xsl:choose>
225
- <xsl:when test="$isFunctionReport">Function Coverage</xsl:when>
226
- <xsl:otherwise>Coverage</xsl:otherwise>
227
- </xsl:choose>
228
- </xsl:variable>
229
-
230
- <xsl:call-template name="header" />
231
-
232
- <xsl:choose>
233
- <xsl:when test="$isDiffReport">
234
- <xsl:call-template name="diffProjectSummary">
235
- <xsl:with-param name="threshold" select="$threshold" />
236
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
237
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
238
- </xsl:call-template>
239
- </xsl:when>
240
- <xsl:when test="$isTrendReport">
241
- <xsl:call-template name="trendsProjectSummary">
242
- <xsl:with-param name="threshold" select="$threshold" />
243
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
244
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
245
- </xsl:call-template>
246
- </xsl:when>
247
- <xsl:otherwise>
248
- <xsl:call-template name="projectSummary">
249
- <xsl:with-param name="threshold" select="$threshold" />
250
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
251
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
252
- </xsl:call-template>
253
- </xsl:otherwise>
254
- </xsl:choose>
255
-
256
-
257
- <!--SymbolCCModuleClassFailedCoverageTop we show everything sorted by cc desc and coverage asc-->
258
- <xsl:if test="$reportType = 'SymbolCCModuleClassFailedCoverageTop'
259
- or $reportType = 'SymbolCCModuleClassCoverageTop'
260
- or $reportType = 'MethodCCModuleClassFailedCoverageTop'
261
- or $reportType = 'MethodCCModuleClassCoverageTop'">
262
- <xsl:call-template name="cyclomaticComplexitySummaryCommon">
263
- <xsl:with-param name="threshold" select="$threshold" />
264
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
265
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
266
- <xsl:with-param name="printClasses">True</xsl:with-param>
267
- </xsl:call-template>
268
- </xsl:if>
269
-
270
- <!--Output the top level module information moduleSummary-->
271
- <xsl:if test="$reportType = 'SymbolModule' or $reportType = 'MethodModule'">
272
- <xsl:call-template name="moduleSummary">
273
- <xsl:with-param name="threshold" select="$threshold" />
274
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
275
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
276
- <xsl:with-param name="printClasses">True</xsl:with-param>
277
- </xsl:call-template>
278
- </xsl:if>
279
-
280
- <!--Output the top level module information moduleSummary-->
281
- <xsl:if test="$reportType = 'SymbolSourceCode' or $reportType = 'MethodSourceCode'">
282
- <xsl:call-template name="documentSummary">
283
- <xsl:with-param name="threshold" select="$threshold" />
284
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
285
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
286
- <xsl:with-param name="printClasses">True</xsl:with-param>
287
- </xsl:call-template>
288
- </xsl:if>
289
-
290
- <!--Output the top level module information moduleSummary-->
291
- <xsl:if test="$reportType = 'SymbolSourceCodeClass'
292
- or $reportType = 'MethodSourceCodeClass'
293
- or $reportType = 'SymbolSourceCodeClassMethod'
294
- or $reportType = 'MethodSourceCodeClassMethod'">
295
- <xsl:call-template name="documentSummaryCommon">
296
- <xsl:with-param name="threshold" select="$threshold" />
297
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
298
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
299
- <xsl:with-param name="printClasses">True</xsl:with-param>
300
- <xsl:with-param name="printMethods">
301
- <xsl:choose xml:space="preserve">
302
- <xsl:when test="$reportType = 'SymbolSourceCodeClassMethod' or $reportType = 'MethodSourceCodeClassMethod'">True</xsl:when>
303
- <xsl:otherwise>False</xsl:otherwise>
304
- </xsl:choose>
305
- </xsl:with-param>
306
- </xsl:call-template>
307
- </xsl:if>
308
-
309
- <!--if the report is namespace based, then output the namespace information.-->
310
- <xsl:if test="$reportType = 'SymbolModuleNamespace' or $reportType = 'MethodModuleNamespace'">
311
- <xsl:call-template name="summaryCommon">
312
- <xsl:with-param name="threshold" select="$threshold" />
313
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
314
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
315
- <xsl:with-param name="printClasses">False</xsl:with-param>
316
- <xsl:with-param name="printMethods">False</xsl:with-param>
317
- </xsl:call-template>
318
- </xsl:if>
319
-
320
- <xsl:if test="($reportType = 'SymbolModuleNamespaceClass') or ($reportType = 'MethodModuleNamespaceClass')">
321
- <xsl:call-template name="summaryCommon">
322
- <xsl:with-param name="threshold" select="$threshold" />
323
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
324
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
325
- <xsl:with-param name="printClasses">True</xsl:with-param>
326
- <xsl:with-param name="printMethods">False</xsl:with-param>
327
- </xsl:call-template>
328
- </xsl:if>
329
-
330
- <xsl:if test="($reportType = 'SymbolModuleNamespaceClassMethod') or ($reportType = 'MethodModuleNamespaceClassMethod')">
331
- <xsl:call-template name="summaryCommon">
332
- <xsl:with-param name="threshold" select="$threshold" />
333
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
334
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
335
- <xsl:with-param name="printClasses">True</xsl:with-param>
336
- <xsl:with-param name="printMethods">True</xsl:with-param>
337
- </xsl:call-template>
338
- </xsl:if>
339
-
340
- <xsl:if test="($reportType = 'Diff')">
341
- <xsl:call-template name="diffSummaryCommon">
342
- <xsl:with-param name="threshold" select="$threshold" />
343
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
344
- <xsl:with-param name="printClasses">True</xsl:with-param>
345
- <xsl:with-param name="printMethods">True</xsl:with-param>
346
- </xsl:call-template>
347
- </xsl:if>
348
-
349
- <xsl:if test="($reportType = 'Trends')">
350
- <xsl:call-template name="trendsSummaryCommon">
351
- <xsl:with-param name="threshold" select="$threshold" />
352
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
353
- <xsl:with-param name="printClasses">True</xsl:with-param>
354
- <xsl:with-param name="printMethods">True</xsl:with-param>
355
- </xsl:call-template>
356
- </xsl:if>
357
-
358
- <xsl:if test="count($root/exclusions/exclusion) != 0">
359
- <xsl:call-template name="exclusionsSummary" >
360
- <xsl:with-param name="excludedTitle" select="$excludedTitle" />
361
- </xsl:call-template>
362
- </xsl:if>
363
-
364
- <xsl:call-template name="footer2" />
365
-
366
- <!--This is used by the trend file.-->
367
- <span id="trendGraph" style="display: none"></span>
368
- </xsl:template>
369
-
370
- <!-- Report Header -->
371
- <xsl:template name="header">
372
- <tr>
373
- <td class="projectTable reportHeader" colspan="{$tablecolumns}">
374
- <table width="100%">
375
- <tbody>
376
- <tr>
377
- <td valign="top">
378
- <h1 class="titleText">
379
- NCover Report - <xsl:value-of select="$reportName" />&#160;-&#160;<xsl:value-of select="$reportTitle" />
380
- </h1>
381
- <table cellpadding="1" class="subtitleText">
382
- <tbody>
383
- <xsl:if test="string(//./params[@name = 'coveragedate']/@value) != ''">
384
- <tr>
385
- <td class="heading">Coverage generated on:</td>
386
- <td>
387
- <xsl:value-of select="string(//./params[@name = 'coveragedate']/@value)" />&#160;at&#160;<xsl:value-of select="string(//./params[@name = 'coveragetime']/@value)" />
388
- </td>
389
- </tr>
390
- </xsl:if>
391
- <tr>
392
- <td class="heading">Report generated on:</td>
393
- <td>
394
- <xsl:value-of select="$date" />&#160;at&#160;<xsl:value-of select="$time" />
395
- </td>
396
- </tr>
397
- <tr>
398
- <td class="heading">NCover Profiler version:</td>
399
- <td>
400
- <xsl:value-of select="$execution/profilerversion" />
401
- </td>
402
- </tr>
403
- <tr>
404
- <td class="heading">Filtering / Sorting:</td>
405
- <td>
406
- <xsl:value-of select="$filterStyle" />&#160;/&#160;<xsl:value-of select="$sortStyle" />
407
- </td>
408
- </tr>
409
- <tr>
410
- <td class="heading">Report version:</td>
411
- <td>
412
- 2009.06.23.12.20
413
- </td>
414
- </tr>
415
- </tbody>
416
- </table>
417
- </td>
418
- <td class="projectStatistics" align="right" valign="top">
419
- <table cellpadding="1" class="subtitleText">
420
- <tbody>
421
- <tr>
422
- <td valign="top" nowrap="true" class="heading">
423
- <xsl:attribute name="rowspan" xml:space="preserve"><xsl:choose><xsl:when test="$reportBranchPoints">5</xsl:when><xsl:otherwise>4</xsl:otherwise></xsl:choose></xsl:attribute>
424
- Project Statistics:
425
- </td>
426
- <td align="right" class="heading">Files:</td>
427
- <td align="right">
428
- <xsl:value-of select="count($root/doc)" />
429
- </td>
430
- <td>
431
- <xsl:attribute name="rowspan" xml:space="preserve"><xsl:choose><xsl:when test="$reportBranchPoints">5</xsl:when><xsl:otherwise>4</xsl:otherwise></xsl:choose></xsl:attribute>
432
- &#160;
433
- </td>
434
- <td align="right" class="heading">NCLOC:</td>
435
- <td align="right">
436
- <xsl:value-of select="$projectstats/@ul + $projectstats/@vl" />
437
- </td>
438
- </tr>
439
- <tr>
440
- <td align="right" class="heading">Classes:</td>
441
- <td align="right">
442
- <xsl:value-of select="count($root/mod/ns/class)" />
443
- </td>
444
- <td align="right" class="heading">&#160;</td>
445
- <td align="right">&#160;</td>
446
- </tr>
447
- <tr>
448
- <td align="right" class="heading">Functions:</td>
449
- <td align="right">
450
- <xsl:value-of select="$projectstats/@vm + $projectstats/@um" />
451
- </td>
452
- <td align="right" class="heading">Unvisited:</td>
453
- <td align="right">
454
- <xsl:value-of select="$projectstats/@um" />
455
- </td>
456
- </tr>
457
- <tr>
458
- <td align="right" class="heading">Seq Pts:</td>
459
- <td align="right">
460
- <xsl:value-of select="$projectstats/@usp + $projectstats/@vsp" />
461
- </td>
462
- <td align="right" class="heading">Unvisited:</td>
463
- <td align="right">
464
- <xsl:value-of select="$projectstats/@usp" />
465
- </td>
466
- </tr>
467
- <xsl:if test="$reportBranchPoints">
468
- <tr>
469
- <td align="right" class="heading">Branch Pts:</td>
470
- <td align="right">
471
- <xsl:value-of select="$projectstats/@ubp + $projectstats/@vbp" />
472
- </td>
473
- <td align="right" class="heading">Unvisited:</td>
474
- <td align="right">
475
- <xsl:value-of select="$projectstats/@ubp" />
476
- </td>
477
- </tr>
478
- </xsl:if>
479
- <xsl:if test="$ccnodeExists and not ($ccdataExists)">
480
- <tr>
481
- <td colspan="6" align="right" class="heading">Cyclomatic complexity data does not exist</td>
482
- </tr>
483
- </xsl:if>
484
-
485
- <xsl:if test="count($root/doc[@id != 0]) = 0 or $projectstats/@usp + $projectstats/@vsp = 0">
486
- <tr>
487
- <td colspan="6" align="right" class="heading">
488
- Symbols were not available for this execution.<br />The sequence points coverage data will not be available.
489
- </td>
490
- </tr>
491
- </xsl:if>
492
- <xsl:if test ="(not ($trendsdataexist) and $isTrendReport) or (string($projectstats/@dvsp) = '' and $isDiffReport)">
493
- <tr>
494
- <td colspan="6" align="right" class="heading">
495
- Trend or Diff data does not exist and the report will not render correctly.
496
- </td>
497
- </tr>
498
- </xsl:if>
499
- </tbody>
500
- </table>
501
- </td>
502
- </tr>
503
-
504
- <xsl:if test="name(.) != 'trendcoveragedata' or not ($root)">
505
- <tr>
506
- <td>
507
- <b>
508
- The input file used to generate the report must start with 'trendcoveragedata' and the file provided started with '<xsl:value-of select="name(.)"/>'
509
- </b>
510
- </td>
511
- </tr>
512
- </xsl:if>
513
- <xsl:if test="name(.) = 'coverage'">
514
- <tr>
515
- <td>
516
- <b>
517
- The input file used to generate the report is a coverage file and not a report file. Please use ncover.reporting to generate an xml file format that may be used with this xsl file.
518
- </b>
519
- </td>
520
- </tr>
521
- </xsl:if>
522
-
523
- </tbody>
524
- </table>
525
- </td>
526
- </tr>
527
- </xsl:template>
528
-
529
- <!-- Project Summary -->
530
- <xsl:template name="projectSummary">
531
- <xsl:param name="threshold" />
532
- <xsl:param name="unvisitedTitle" />
533
- <xsl:param name="coverageTitle" />
534
- <!--The Total points or methods-->
535
- <xsl:variable name="total">
536
- <xsl:call-template name="gettotal">
537
- <xsl:with-param name="stats" select="$projectstats" />
538
- </xsl:call-template>
539
- </xsl:variable>
540
-
541
- <xsl:call-template name="sectionTableHeader">
542
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
543
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
544
- <xsl:with-param name="sectionTitle">Project</xsl:with-param>
545
- <xsl:with-param name="cellClass">projectTable</xsl:with-param>
546
- <xsl:with-param name="showThreshold">True</xsl:with-param>
547
- </xsl:call-template>
548
-
549
- <xsl:call-template name="coverageDetail">
550
- <xsl:with-param name="name">
551
- <xsl:choose>
552
- <xsl:when test="string-length($reportName) > 0">
553
- <xsl:value-of select="$reportName" />
554
- </xsl:when>
555
- <xsl:otherwise>&#160;</xsl:otherwise>
556
- </xsl:choose>
557
- </xsl:with-param>
558
- <xsl:with-param name="stats" select="$projectstats" />
559
- <xsl:with-param name="showThreshold">True</xsl:with-param>
560
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
561
- </xsl:call-template>
562
- </xsl:template>
563
-
564
- <!--Build the header for each of the sections.
565
- It removes the complexity of building the multi table headers for the project and then the modules-->
566
- <xsl:template name="sectionTableHeader">
567
- <xsl:param name="unvisitedTitle" />
568
- <xsl:param name="coverageTitle" />
569
- <xsl:param name="sectionTitle" />
570
- <xsl:param name="cellClass" />
571
- <xsl:param name="showThreshold" />
572
-
573
- <!--We want to determine how many items can be shows above a percent-->
574
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
575
- <xsl:if test="$qualifiedmethods > 0">
576
- <!--white space-->
577
- <tr>
578
- <td colspan="{$tablecolumns}">&#160;</td>
579
- </tr>
580
- <!--Top row showing SP and BP Data-->
581
- <xsl:if test="not ($isFunctionReport)">
582
- <tr>
583
- <td class="{$cellClass} mtHdLeftTop">&#160;</td>
584
- <td class="{$cellClass} mtHdRightTop">
585
- <xsl:attribute name="colspan" xml:space="preserve"><xsl:choose><xsl:when test="$showThreshold = 'True'">4</xsl:when><xsl:otherwise>3</xsl:otherwise></xsl:choose></xsl:attribute>Sequence Points
586
- </td>
587
- <xsl:if test="$reportBranchPoints">
588
- <td class="{$cellClass} mtHdRightTop">
589
- <xsl:attribute name="colspan" xml:space="preserve"><xsl:choose><xsl:when test="$showThreshold = 'True'">4</xsl:when><xsl:otherwise>3</xsl:otherwise></xsl:choose></xsl:attribute>Branch Points
590
- </td>
591
- </xsl:if>
592
- <xsl:if test="$reportCC">
593
- <td class="{$cellClass} mtHdRightTop">C. C.</td>
594
- </xsl:if>
595
- </tr>
596
- </xsl:if>
597
- <tr>
598
- <td>
599
- <xsl:attribute xml:space="preserve" name="class"><xsl:value-of select="$cellClass" /><xsl:choose><xsl:when test="$isFunctionReport"> mtHdLeftFunc</xsl:when><xsl:otherwise> mtHdLeft</xsl:otherwise></xsl:choose></xsl:attribute>
600
- <xsl:value-of select="$sectionTitle" disable-output-escaping="yes" />
601
- </td>
602
- <td class="{$cellClass} mtHd">Acceptable</td>
603
- <td class="{$cellClass} mtHd">
604
- <xsl:value-of select="$unvisitedTitle" />
605
- </td>
606
- <!--This cell contains both the text and the chart.-->
607
- <td class="{$cellClass} mtgHd" style="text-align: center;" colspan="2">
608
- <xsl:value-of select="$coverageTitle" />
609
- </td>
610
-
611
- <xsl:if test="not ($isFunctionReport) and $reportBranchPoints">
612
- <td class="{$cellClass} mtHd">Acceptable</td>
613
- <td class="{$cellClass} mtHd">
614
- <xsl:value-of select="$unvisitedTitle" />
615
- </td>
616
- <!--This cell contains both the text and the chart.-->
617
- <td class="{$cellClass} mtgHd" style="text-align: center;" colspan="2">
618
- <xsl:value-of select="$coverageTitle" />
619
- </td>
620
- </xsl:if>
621
- <xsl:if test="$reportCC">
622
- <td class="{$cellClass} mtHd">
623
- <xsl:if test="$functionalCCReport">
624
- C.C.<br />
625
- </xsl:if> Avg / Max
626
- </td>
627
- </xsl:if>
628
- <xsl:if test="$reportVisitCounts">
629
- <td class="{$cellClass} mtHd">Visit Count</td>
630
- <td class="{$cellClass} mtHd">V.C. %</td>
631
- </xsl:if>
632
- </tr>
633
- </xsl:if>
634
- </xsl:template>
635
-
636
- <!-- Modules Summary -->
637
- <xsl:template name="moduleSummary">
638
- <xsl:param name="threshold" />
639
- <xsl:param name="unvisitedTitle" />
640
- <xsl:param name="coverageTitle" />
641
-
642
- <xsl:call-template name="sectionTableHeader">
643
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
644
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
645
- <xsl:with-param name="sectionTitle">Modules</xsl:with-param>
646
- <xsl:with-param name="cellClass">primaryTable</xsl:with-param>
647
- <xsl:with-param name="showThreshold">True</xsl:with-param>
648
- </xsl:call-template>
649
-
650
-
651
-
652
- <xsl:for-each select="$root/mod[string(stats/@ex) != '1']">
653
- <xsl:variable name="stats" select="stats[last()]" />
654
- <!--The Total points or methods-->
655
- <xsl:variable name="total">
656
- <xsl:call-template name="gettotal">
657
- <xsl:with-param name="stats" select="$stats" />
658
- </xsl:call-template>
659
- </xsl:variable>
660
- <xsl:call-template name="coverageDetail">
661
- <xsl:with-param name="name" select="assembly" />
662
- <xsl:with-param name="stats" select="$stats" />
663
- <xsl:with-param name="showThreshold">True</xsl:with-param>
664
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
665
- </xsl:call-template>
666
- </xsl:for-each>
667
- </xsl:template>
668
-
669
- <!--Document Summary-->
670
-
671
- <xsl:template name="documentSummary">
672
- <xsl:param name="threshold" />
673
- <xsl:param name="unvisitedTitle" />
674
- <xsl:param name="coverageTitle" />
675
-
676
- <xsl:call-template name="sectionTableHeader">
677
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
678
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
679
- <xsl:with-param name="sectionTitle">Documents</xsl:with-param>
680
- <xsl:with-param name="cellClass">primaryTable</xsl:with-param>
681
- <xsl:with-param name="showThreshold">True</xsl:with-param>
682
- </xsl:call-template>
683
-
684
- <xsl:for-each select="$root/doc[string(stats/@ex) != '1' and string(@id) != '0']">
685
- <!--<xsl:sort select="en"/>-->
686
- <xsl:variable name="stats" select="stats[last()]" />
687
- <xsl:call-template name="coverageDetail">
688
- <xsl:with-param name="name" select="en" />
689
- <xsl:with-param name="stats" select="$stats" />
690
- <xsl:with-param name="showThreshold">True</xsl:with-param>
691
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
692
- </xsl:call-template>
693
- </xsl:for-each>
694
- </xsl:template>
695
-
696
- <!--Helper templates-->
697
-
698
- <!-- Coverage detail row in main grid displaying a name, statistics and graph bar -->
699
- <xsl:template name="coverageDetail">
700
- <xsl:param name="name" />
701
- <xsl:param name="stats" />
702
- <xsl:param name="showThreshold" />
703
- <xsl:param name="showBottomLine" />
704
- <!--By default this needs to be unvisited count-->
705
- <xsl:param name="countText">
706
- <xsl:call-template name="unvisiteditems">
707
- <xsl:with-param name="stats" select="$stats" />
708
- </xsl:call-template>
709
- </xsl:param>
710
- <xsl:param name="styleTweak" />
711
- <xsl:param name="scale" select="$graphscale" />
712
- <xsl:variable name="total">
713
- <xsl:call-template name="gettotal">
714
- <xsl:with-param name="stats" select="$stats" />
715
- </xsl:call-template>
716
- </xsl:variable>
717
- <xsl:variable name="totalbranch">
718
- <xsl:call-template name="gettotal">
719
- <xsl:with-param name="stats" select="$stats" />
720
- <xsl:with-param name="branch" select="'True'" />
721
- </xsl:call-template>
722
- </xsl:variable>
723
- <xsl:variable name="unvisitedcount">
724
- <xsl:call-template name="unvisiteditems">
725
- <xsl:with-param name="stats" select="$stats" />
726
- </xsl:call-template>
727
- </xsl:variable>
728
- <xsl:variable name="unvisitedcountbranch">
729
- <xsl:value-of select="$stats/@ubp" />
730
- </xsl:variable>
731
- <xsl:variable name="coverage">
732
- <xsl:choose>
733
- <xsl:when test="$total = 0">N/A</xsl:when>
734
- <xsl:when test="$isFunctionReport">
735
- <xsl:value-of select="($stats/@vm div $total) * 100" />
736
- </xsl:when>
737
- <xsl:otherwise>
738
- <xsl:value-of select="($stats/@vsp div $total) * 100" />
739
- </xsl:otherwise>
740
- </xsl:choose>
741
- </xsl:variable>
742
- <xsl:variable name="coveragebranch">
743
- <xsl:choose>
744
- <xsl:when test="$totalbranch = 0">N/A</xsl:when>
745
- <xsl:otherwise>
746
- <xsl:value-of select="($stats/@vbp div $totalbranch) * 100" />
747
- </xsl:otherwise>
748
- </xsl:choose>
749
- </xsl:variable>
750
- <xsl:variable name="threshold">
751
- <xsl:choose>
752
- <xsl:when test="$isFunctionReport">
753
- <xsl:value-of select="$stats/@afp" />
754
- </xsl:when>
755
- <xsl:otherwise>
756
- <xsl:value-of select="$stats/@acp" />
757
- </xsl:otherwise>
758
- </xsl:choose>
759
- </xsl:variable>
760
- <xsl:variable name="thresholdbranch">
761
- <xsl:choose>
762
- <xsl:when test="$isFunctionReport">
763
- <xsl:value-of select="$stats/@afp" />
764
- </xsl:when>
765
- <xsl:otherwise>
766
- <xsl:value-of select="$stats/@abp" />
767
- </xsl:otherwise>
768
- </xsl:choose>
769
- </xsl:variable>
770
-
771
- <!--We want to determine how many items can be shows above a percent-->
772
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
773
- <xsl:if test="$qualifiedmethods > 0">
774
- <tr>
775
- <xsl:choose>
776
- <xsl:when test="$showThreshold='True'">
777
- <td>
778
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mtcItem</xsl:attribute>
779
- <xsl:if test="$styleTweak != ''" xml:space="preserve"><xsl:attribute name="style"><xsl:value-of select="$styleTweak"/></xsl:attribute></xsl:if>
780
- <div class="mtDiv">
781
- <xsl:value-of select="$name" />
782
- </div>
783
- </td>
784
- <td>
785
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
786
- <xsl:value-of select="concat(format-number($threshold,'#0.0'), ' %')" />
787
- </td>
788
- </xsl:when>
789
- <xsl:otherwise>
790
- <td colspan="2">
791
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mtcItem</xsl:attribute>
792
- <xsl:if test="$styleTweak != ''" xml:space="preserve"><xsl:attribute name="style"><xsl:value-of select="$styleTweak"/></xsl:attribute></xsl:if>
793
- <div class="mtDiv">
794
- <xsl:value-of select="$name" />
795
- </div>
796
- </td>
797
- </xsl:otherwise>
798
- </xsl:choose>
799
- <td>
800
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
801
- <xsl:value-of select="$countText" />
802
- </td>
803
- <td>
804
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mPt</xsl:attribute>
805
- <xsl:call-template name="printcoverage">
806
- <xsl:with-param name="coverage" select="$coverage"></xsl:with-param>
807
- </xsl:call-template>
808
- </td>
809
- <td>
810
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>tmcGraph</xsl:attribute>
811
- <xsl:call-template name="coverageBarChart">
812
- <xsl:with-param name="notVisited" select="$unvisitedcount" />
813
- <xsl:with-param name="total" select="$total" />
814
- <xsl:with-param name="threshold" select="$threshold" />
815
- <xsl:with-param name="scale" select="$scale" />
816
- </xsl:call-template>
817
- </td>
818
- <!--This section can be hard coded to branch points since that is all that it does.-->
819
- <xsl:if test="not ($isFunctionReport) and $reportBranchPoints">
820
- <td>
821
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
822
- <xsl:choose>
823
- <xsl:when test="$showThreshold='True'">
824
- <xsl:value-of select="concat(format-number($thresholdbranch,'#0.0'), ' %')" />
825
- </xsl:when>
826
- <xsl:otherwise>
827
- <xsl:text disable-output-escaping="yes">&#160;</xsl:text>
828
- </xsl:otherwise>
829
- </xsl:choose>
830
- </td>
831
- <td>
832
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
833
- <xsl:value-of select="$unvisitedcountbranch" />
834
- </td>
835
- <td>
836
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mPt</xsl:attribute>
837
- <xsl:call-template name="printcoverage">
838
- <xsl:with-param name="coverage" select="$coveragebranch"></xsl:with-param>
839
- </xsl:call-template>
840
- </td>
841
- <td>
842
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>tmcGraph</xsl:attribute>
843
- <xsl:call-template name="coverageBarChart">
844
- <xsl:with-param name="notVisited" select="$unvisitedcountbranch" />
845
- <xsl:with-param name="total" select="$totalbranch" />
846
- <xsl:with-param name="threshold" select="$thresholdbranch" />
847
- <xsl:with-param name="scale" select="$scale" />
848
- </xsl:call-template>
849
- </td>
850
- </xsl:if>
851
- <xsl:if test="$reportCC">
852
- <td>
853
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
854
- <xsl:value-of select="$stats/@ccavg" /> / <xsl:value-of select="$stats/@ccmax" />
855
- </td>
856
- </xsl:if>
857
- <xsl:if test="$reportVisitCounts">
858
- <xsl:variable name="count" select="$stats/@svc" />
859
- <td>
860
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
861
- <xsl:choose>
862
- <xsl:when test="$count > 0">
863
- <xsl:value-of select="$count" />
864
- </xsl:when>
865
- <xsl:otherwise>-</xsl:otherwise>
866
- </xsl:choose>
867
- </td>
868
- <td>
869
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
870
- <xsl:choose>
871
- <xsl:when test="$count > 0">
872
- <xsl:call-template name="printcoverage">
873
- <xsl:with-param name="coverage" select="($count div $projectstats/@svc) * 100"></xsl:with-param>
874
- <xsl:with-param name="twoplaces" select="'1'" />
875
- </xsl:call-template>
876
- </xsl:when>
877
- <xsl:otherwise>-</xsl:otherwise>
878
- </xsl:choose>
879
- </td>
880
- </xsl:if>
881
- </tr>
882
- </xsl:if>
883
- </xsl:template>
884
-
885
- <!-- Exclusions Summary Not supported at this time.-->
886
- <xsl:template name="exclusionsSummary">
887
- <xsl:param name="excludedTitle" />
888
- <!--<tr>
889
- <td colspan="{$tablecolumns}">&#160;</td>
890
- </tr>
891
- <tr>
892
- <td class="exclusionTable mtHdLeft" colspan="1">Exclusion In Module</td>
893
- <td class="exclusionTable mtgHd" colspan="3">Item Excluded</td>
894
- <td class="exclusionTable mtgHd" colspan="1">All Code Within</td>
895
- <td class="exclusionTable mtgHd2" colspan="1">
896
- <xsl:value-of select="$excludedTitle" />
897
- </td>
898
- </tr>
899
- <xsl:for-each select="./exclusions/exclusion">
900
- <tr>
901
- <td class="mb etcItem exclusionCell" colspan="1">
902
- <xsl:value-of select="@m" />
903
- </td>
904
- <td class="mb tmcGraph exclusionCell" colspan="3">
905
- <xsl:value-of select="@n" />
906
- </td>
907
- <td class="mb tmcGraph exclusionCell" colspan="1">
908
- <xsl:value-of select="@cat" />
909
- </td>
910
- <td class="mb mtcData exclusionCell" colspan="1">
911
- <xsl:value-of select="@fp" />
912
- </td>
913
- </tr>
914
- </xsl:for-each>
915
- <tr>
916
- <td colspan="4">&#160;</td>
917
- <td class="exclusionTable mtHdLeft">Total</td>
918
- <td class="exclusionTable mtgHd2">
919
- <xsl:value-of select="sum(./exclusions/exclusion/@fp)"/>
920
- </td>
921
- </tr>-->
922
- </xsl:template>
923
-
924
- <!-- Footer -->
925
- <xsl:template name="footer2">
926
- <tr>
927
- <td colspan="{$tablecolumns}">&#160;</td>
928
- </tr>
929
- </xsl:template>
930
-
931
- <!-- Draw % Green/Red/Yellow Bar -->
932
- <xsl:template name="coverageBarChart">
933
- <xsl:param name="notVisited" />
934
- <xsl:param name="total" />
935
- <xsl:param name="threshold" />
936
- <xsl:param name="scale" />
937
- <xsl:variable name="nocoverage" select="$total = 0 and $notVisited = 0" />
938
- <xsl:variable name="visited" select="$total - $notVisited" />
939
- <xsl:variable name="coverage" select="$visited div $total * 100"/>
940
- <!--Fix rounding issues in the graph since we can only do whole numbers-->
941
- <xsl:variable name="right" select="format-number($coverage div 100 * $scale, '0') - 1" />
942
- <xsl:variable name="left" select="format-number($scale - $right, '0')" />
943
- <xsl:choose>
944
- <xsl:when test="$nocoverage">
945
- &#160;
946
- </xsl:when>
947
- <xsl:otherwise>
948
- <xsl:if test="$notVisited = 0">
949
- <img src="{$baseimagepath}g.png" height="14" width="{format-number($scale, '0')}" />
950
- </xsl:if>
951
- <xsl:if test="($visited != 0) and ($notVisited != 0)">
952
- <img src="{$baseimagepath}g.png" height="14" width="{$right}" />
953
- </xsl:if>
954
- <xsl:if test="$notVisited != 0">
955
- <xsl:if test="$coverage &gt;= $threshold">
956
- <img src="{$baseimagepath}y.png" height="14" width="{$left}" />
957
- </xsl:if>
958
- <xsl:if test="$coverage &lt; $threshold">
959
- <img src="{$baseimagepath}r.png" height="14" width="{$left}" />
960
- </xsl:if>
961
- </xsl:if>
962
- </xsl:otherwise>
963
- </xsl:choose>
964
- </xsl:template>
965
-
966
- <!--Summary for document reports that contain methods-->
967
- <xsl:template name="cyclomaticComplexitySummaryCommon">
968
- <xsl:param name="threshold" />
969
- <xsl:param name="unvisitedTitle" />
970
- <xsl:param name="coverageTitle" xml:space="preserve">Coverage</xsl:param>
971
- <xsl:param name="printClasses" />
972
- <xsl:param name="printMethods" />
973
-
974
- <xsl:for-each select="$root/mod[string(stats/@ex) != '1']">
975
- <xsl:sort select="stats[last()]/@ccmax" order="descending" data-type ="number" />
976
- <xsl:variable name="docstats" select="stats[last()]" />
977
- <xsl:variable name="documentID" select="@id" />
978
- <!--
979
- To make a nice clean report we want to see if we actually have a count before we continue.
980
- -->
981
- <xsl:variable name="classcount">
982
- <xsl:choose xml:space="preserve">
983
- <xsl:when test="$reportType = 'SymbolCCModuleClassFailedCoverageTop'"><xsl:value-of select="count(ns/class[string(stats/@ex) != '1' and stats/@ccmax > 0 and
984
- (
985
- (stats/@vsp div (stats/@usp + stats/@vsp)) * 100 &lt; stats/@acp
986
- or (stats/@vbp div (stats/@ubp + stats/@vbp)) * 100 &lt; stats/@acp
987
- )
988
- ])"/></xsl:when>
989
- <xsl:when test="$reportType = 'MethodCCModuleClassFailedCoverageTop'"><xsl:value-of select="count(ns/class[string(stats/@ex) != '1' and stats/@ccmax > 0 and
990
- (stats/@vm div (stats/@um + stats/@vm)) * 100 &lt; stats/@afp])" /></xsl:when>
991
- <xsl:when test="$reportType = 'MethodCCModuleClassCoverageTop'"><xsl:value-of select="count(ns/class[string(stats/@ex) != '1' and stats/@ccmax > 0])" /></xsl:when>
992
- <xsl:otherwise>1</xsl:otherwise>
993
- </xsl:choose>
994
- </xsl:variable>
995
-
996
- <!--If we have something to show then show it-->
997
- <xsl:if test="$classcount > 0">
998
- <xsl:call-template name="sectionTableHeader">
999
- <xsl:with-param name="unvisitedTitle" select="'U.V.'" />
1000
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1001
- <xsl:with-param name="sectionTitle">Module</xsl:with-param>
1002
- <xsl:with-param name="cellClass">secondaryTable</xsl:with-param>
1003
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1004
- </xsl:call-template>
1005
-
1006
- <xsl:call-template name="coverageDetail">
1007
- <xsl:with-param name="name" select="assembly" />
1008
- <xsl:with-param name="stats" select="$docstats" />
1009
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1010
- </xsl:call-template>
1011
- <tr>
1012
- <td class="secondaryChildTable ctHeader" colspan="{$tablecolumns}">
1013
- Classes <xsl:if test="$printMethods = 'True'"> / Methods</xsl:if>
1014
- </td>
1015
- </tr>
1016
- <xsl:choose>
1017
- <xsl:when test="$reportType = 'SymbolCCModuleClassFailedCoverageTop'">
1018
- <!--Grab the first 10 classes where the sp or bp % is less than acceptable-->
1019
- <xsl:for-each select="ns/class[string(stats/@ex) != '1' and stats/@ccmax > 0 and
1020
- (
1021
- (stats/@vsp div (stats/@usp + stats/@vsp)) * 100 &lt; stats/@acp
1022
- or (stats/@vbp div (stats/@ubp + stats/@vbp)) * 100 &lt; stats/@acp
1023
- )
1024
- ]">
1025
- <xsl:sort select="stats[last()]/@ccmax" order="descending" data-type ="number" />
1026
- <!--Not sure why the position above works so we are going to limit it here-->
1027
- <xsl:if test="position() &lt;= $ccClassCount">
1028
- <xsl:call-template name="classCommon">
1029
- <xsl:with-param name="printMethods" select="$printMethods" />
1030
- </xsl:call-template>
1031
- </xsl:if>
1032
- </xsl:for-each>
1033
- </xsl:when>
1034
- <xsl:when test="$reportType = 'MethodCCModuleClassFailedCoverageTop'">
1035
- <!--Grab the first 10 classes where the sp or bp % is less than acceptable-->
1036
- <xsl:for-each select="ns/class[string(stats/@ex) != '1' and stats/@ccmax > 0 and
1037
- (stats/@vm div (stats/@um + stats/@vm)) * 100 &lt; stats/@afp]">
1038
- <xsl:sort select="stats[last()]/@ccmax" order="descending" data-type ="number" />
1039
- <!--Not sure why the position above works so we are going to limit it here-->
1040
- <xsl:if test="position() &lt;= $ccClassCount">
1041
- <xsl:call-template name="classCommon">
1042
- <xsl:with-param name="printMethods" select="$printMethods" />
1043
- </xsl:call-template>
1044
- </xsl:if>
1045
- </xsl:for-each>
1046
- </xsl:when>
1047
- <xsl:otherwise>
1048
- <!--Grab the first 10 classes where the sp or bp %-->
1049
- <xsl:for-each select="ns/class[string(stats/@ex) != '1']">
1050
- <xsl:sort select="stats[last()]/@ccmax" order="descending" data-type ="number" />
1051
- <!--Not sure why the position above works so we are going to limit it here-->
1052
- <xsl:if test="position() &lt;= $ccClassCount and stats[last()]/@ccmax > 0">
1053
- <xsl:call-template name="classCommon">
1054
- <xsl:with-param name="printMethods" select="$printMethods" />
1055
- </xsl:call-template>
1056
- </xsl:if>
1057
- </xsl:for-each>
1058
- </xsl:otherwise>
1059
- </xsl:choose>
1060
- </xsl:if>
1061
- </xsl:for-each>
1062
- </xsl:template>
1063
-
1064
- <!--Summary for document reports that contain methods-->
1065
- <xsl:template name="documentSummaryCommon">
1066
- <xsl:param name="threshold" />
1067
- <xsl:param name="unvisitedTitle" />
1068
- <xsl:param name="coverageTitle">Coverage</xsl:param>
1069
- <xsl:param name="printClasses" />
1070
- <xsl:param name="printMethods" />
1071
-
1072
- <xsl:for-each select="$root/doc[string(stats/@ex) != '1' and string(@id) != '0']">
1073
- <xsl:variable name="docstats" select="stats[last()]" />
1074
- <xsl:variable name="documentID" select="@id" />
1075
-
1076
- <xsl:call-template name="sectionTableHeader">
1077
- <xsl:with-param name="unvisitedTitle" select="'U.V.'" />
1078
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1079
- <xsl:with-param name="sectionTitle">Document</xsl:with-param>
1080
- <xsl:with-param name="cellClass">secondaryTable</xsl:with-param>
1081
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1082
- </xsl:call-template>
1083
-
1084
- <xsl:call-template name="coverageDetail">
1085
- <xsl:with-param name="name" select="en" />
1086
- <xsl:with-param name="stats" select="$docstats" />
1087
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1088
- </xsl:call-template>
1089
- <tr>
1090
- <td class="secondaryChildTable ctHeader" colspan="{$tablecolumns}">
1091
- Classes <xsl:if test="$printMethods = 'True'"> / Methods</xsl:if>
1092
- </td>
1093
- </tr>
1094
-
1095
- <!--For each class that is used for the document [string(stats/@ex) != '1']-->
1096
- <xsl:for-each select="$root/mod/ns/class[string(stats/@ex) != '1']">
1097
- <xsl:variable name="doc" select="stats/doc = $documentID" />
1098
- <xsl:if test="$doc">
1099
- <xsl:call-template name="classCommon">
1100
- <xsl:with-param name="printMethods" select="$printMethods" />
1101
- </xsl:call-template>
1102
- </xsl:if>
1103
- </xsl:for-each>
1104
- </xsl:for-each>
1105
- </xsl:template>
1106
-
1107
- <!-- Common Summary Header information -->
1108
- <xsl:template name="summaryCommon">
1109
- <xsl:param name="threshold" />
1110
- <xsl:param name="unvisitedTitle" />
1111
- <xsl:param name="coverageTitle">Coverage</xsl:param>
1112
- <xsl:param name="printClasses" />
1113
- <xsl:param name="printMethods" />
1114
- <xsl:for-each select="$root/mod[string(stats/@ex) != '1']">
1115
- <!--We want to determine how many items can be shows above a percent-->
1116
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1117
- <xsl:if test="$qualifiedmethods > 0">
1118
- <xsl:variable name="modstats" select="stats[last()]" />
1119
-
1120
- <xsl:call-template name="sectionTableHeader">
1121
- <xsl:with-param name="unvisitedTitle" select="'U.V.'" />
1122
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1123
- <xsl:with-param name="sectionTitle">Module</xsl:with-param>
1124
- <xsl:with-param name="cellClass">secondaryTable</xsl:with-param>
1125
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1126
- </xsl:call-template>
1127
-
1128
- <xsl:call-template name="coverageDetail">
1129
- <xsl:with-param name="name" select="assembly" />
1130
- <xsl:with-param name="stats" select="$modstats" />
1131
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1132
- </xsl:call-template>
1133
- <tr>
1134
- <td class="secondaryChildTable ctHeader" colspan="{$tablecolumns}">
1135
- Namespace <xsl:if test="$printClasses = 'True'"> / Classes</xsl:if>
1136
- </td>
1137
- </tr>
1138
- <!--print the Namespaces classes and methods-->
1139
- <xsl:call-template name="namespaceClassMethodSummary">
1140
- <xsl:with-param name="printClasses" select="$printClasses" />
1141
- <xsl:with-param name="printMethods" select="$printMethods" />
1142
- </xsl:call-template>
1143
- </xsl:if>
1144
- </xsl:for-each>
1145
- </xsl:template>
1146
-
1147
- <!--print the Namespaces classes and methods-->
1148
- <xsl:template name="namespaceClassMethodSummary">
1149
- <xsl:param name="printClasses" />
1150
- <xsl:param name="printMethods" />
1151
- <xsl:for-each select="ns[string(stats/@ex) != '1']">
1152
- <xsl:variable name="nsstats" select="stats[last()]" />
1153
-
1154
- <xsl:choose>
1155
- <xsl:when test="$isDiffReport">
1156
- <!--Modified to support threshold on the node-->
1157
- <xsl:call-template name="diffCoverageDetail">
1158
- <xsl:with-param name="name" select="name" />
1159
- <xsl:with-param name="stats" select="$nsstats" />
1160
- <xsl:with-param name="styleTweak">padding-left:20px;font-weight:bold</xsl:with-param>
1161
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1162
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1163
- </xsl:call-template>
1164
- </xsl:when>
1165
- <xsl:when test="$isTrendReport">
1166
- <!--Modified to support threshold on the node-->
1167
- <xsl:call-template name="trendsCoverageDetail">
1168
- <xsl:with-param name="name" select="name" />
1169
- <xsl:with-param name="stats" select="$nsstats" />
1170
- <xsl:with-param name="styleTweak">padding-left:20px;font-weight:bold</xsl:with-param>
1171
- <xsl:with-param name="showTrendGraph">True</xsl:with-param>
1172
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1173
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1174
- </xsl:call-template>
1175
- </xsl:when>
1176
- <xsl:otherwise>
1177
- <!--Modified to support threshold on the node-->
1178
- <xsl:call-template name="coverageDetail">
1179
- <xsl:with-param name="name" select="name" />
1180
- <xsl:with-param name="stats" select="$nsstats" />
1181
- <xsl:with-param name="styleTweak">padding-left:20px;font-weight:bold</xsl:with-param>
1182
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1183
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1184
- </xsl:call-template>
1185
- </xsl:otherwise>
1186
- </xsl:choose>
1187
- <xsl:if test="$printClasses = 'True'">
1188
- <xsl:for-each select="class[string(stats/@ex) != '1']">
1189
- <xsl:call-template name="classCommon">
1190
- <xsl:with-param name="printMethods" select="$printMethods" />
1191
- </xsl:call-template>
1192
- </xsl:for-each>
1193
- </xsl:if>
1194
- </xsl:for-each>
1195
- </xsl:template>
1196
-
1197
- <!--Print the class and method as needed.-->
1198
- <xsl:template name="classCommon">
1199
- <xsl:param name="printMethods" />
1200
- <xsl:variable name="clsstats" select="stats[last()]" />
1201
- <xsl:choose>
1202
- <xsl:when test="$isDiffReport">
1203
- <xsl:call-template name="diffCoverageDetail">
1204
- <xsl:with-param name="name" select="name" />
1205
- <xsl:with-param name="stats" select="$clsstats" />
1206
- <xsl:with-param name="styleTweak">padding-left:30px</xsl:with-param>
1207
- <xsl:with-param name="scale">
1208
- <xsl:value-of select ="$graphscale * .8" />
1209
- </xsl:with-param>
1210
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1211
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1212
- </xsl:call-template>
1213
- </xsl:when>
1214
- <xsl:when test="$isTrendReport">
1215
- <xsl:call-template name="trendsCoverageDetail">
1216
- <xsl:with-param name="name" select="name" />
1217
- <xsl:with-param name="stats" select="$clsstats" />
1218
- <xsl:with-param name="styleTweak">padding-left:30px</xsl:with-param>
1219
- <xsl:with-param name="scale">
1220
- <xsl:value-of select ="$graphscale * .8" />
1221
- </xsl:with-param>
1222
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1223
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1224
- </xsl:call-template>
1225
- </xsl:when>
1226
- <xsl:otherwise>
1227
- <xsl:call-template name="coverageDetail">
1228
- <xsl:with-param name="name" select="name" />
1229
- <xsl:with-param name="stats" select="$clsstats" />
1230
- <xsl:with-param name="styleTweak">padding-left:30px</xsl:with-param>
1231
- <xsl:with-param name="scale">
1232
- <xsl:value-of select ="$graphscale * .8" />
1233
- </xsl:with-param>
1234
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1235
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1236
- </xsl:call-template>
1237
- </xsl:otherwise>
1238
- </xsl:choose>
1239
-
1240
-
1241
- <xsl:if test="$printMethods = 'True'">
1242
- <xsl:for-each select="method[string(stats/@ex) != '1']">
1243
- <xsl:call-template name="methodDetails" />
1244
- </xsl:for-each>
1245
- </xsl:if>
1246
- </xsl:template>
1247
-
1248
- <xsl:template name="methodDetails">
1249
- <xsl:variable name="methstats" select="stats[last()]" />
1250
- <xsl:variable name="countTextDisplay">
1251
- <xsl:choose>
1252
- <xsl:when test="$isFunctionReport">-</xsl:when>
1253
- <xsl:otherwise>
1254
- <xsl:value-of select="$methstats/@usp"/>
1255
- </xsl:otherwise>
1256
- </xsl:choose>
1257
- </xsl:variable>
1258
- <xsl:choose>
1259
- <xsl:when test="$isDiffReport">
1260
- <xsl:call-template name="diffCoverageDetail">
1261
- <xsl:with-param name="name" select="name" />
1262
- <xsl:with-param name="stats" select="$methstats" />
1263
- <xsl:with-param name="countText" select="$countTextDisplay" />
1264
- <xsl:with-param name="styleTweak">padding-left:40px;font-style:italic</xsl:with-param>
1265
- <xsl:with-param name="scale">
1266
- <xsl:value-of select ="$graphscale * .7" />
1267
- </xsl:with-param>
1268
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1269
- </xsl:call-template>
1270
- </xsl:when>
1271
- <xsl:when test="$isTrendReport">
1272
- <xsl:call-template name="trendsCoverageDetail">
1273
- <xsl:with-param name="name" select="name" />
1274
- <xsl:with-param name="stats" select="$methstats" />
1275
- <xsl:with-param name="countText" select="$countTextDisplay" />
1276
- <xsl:with-param name="styleTweak">padding-left:40px;font-style:italic</xsl:with-param>
1277
- <xsl:with-param name="scale">
1278
- <xsl:value-of select ="$graphscale * .7" />
1279
- </xsl:with-param>
1280
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1281
- </xsl:call-template>
1282
- </xsl:when>
1283
- <xsl:otherwise>
1284
- <xsl:call-template name="coverageDetail">
1285
- <xsl:with-param name="name" select="name" />
1286
- <xsl:with-param name="stats" select="$methstats" />
1287
- <xsl:with-param name="countText" select="$countTextDisplay" />
1288
- <xsl:with-param name="styleTweak">padding-left:40px;font-style:italic</xsl:with-param>
1289
- <xsl:with-param name="scale">
1290
- <xsl:value-of select ="$graphscale * .7" />
1291
- </xsl:with-param>
1292
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1293
- </xsl:call-template>
1294
- </xsl:otherwise>
1295
- </xsl:choose>
1296
- </xsl:template>
1297
-
1298
- <!--Start Diff Templates-->
1299
-
1300
- <!-- Common Summary Header information -->
1301
- <xsl:template name="diffSummaryCommon">
1302
- <xsl:param name="threshold" />
1303
- <xsl:param name="unvisitedTitle" />
1304
- <xsl:param name="coverageTitle">Coverage</xsl:param>
1305
- <xsl:param name="printClasses" />
1306
- <xsl:param name="printMethods" />
1307
-
1308
- <xsl:for-each select="$root/mod[string(stats/@ex) != '1']">
1309
- <!--We want to determine how many items can be shows above a percent-->
1310
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1311
- <xsl:if test="$qualifiedmethods > 0">
1312
- <xsl:variable name="modstats" select="stats[last()]" />
1313
-
1314
- <xsl:call-template name="diffSectionTableHeader">
1315
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1316
- <xsl:with-param name="sectionTitle">Module</xsl:with-param>
1317
- <xsl:with-param name="cellClass">secondaryTable</xsl:with-param>
1318
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1319
- </xsl:call-template>
1320
-
1321
- <xsl:call-template name="diffCoverageDetail">
1322
- <xsl:with-param name="name" select="assembly" />
1323
- <xsl:with-param name="stats" select="$modstats" />
1324
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1325
- </xsl:call-template>
1326
- <tr>
1327
- <td class="secondaryChildTable ctHeader" colspan="{$tablecolumns}">
1328
- Namespace <xsl:if test="$printClasses = 'True'"> / Classes</xsl:if>
1329
- </td>
1330
- </tr>
1331
- <!--print the Namespaces classes and methods-->
1332
- <xsl:call-template name="namespaceClassMethodSummary">
1333
- <xsl:with-param name="printClasses" select="$printClasses" />
1334
- <xsl:with-param name="printMethods" select="$printMethods" />
1335
- </xsl:call-template>
1336
- </xsl:if>
1337
- </xsl:for-each>
1338
- </xsl:template>
1339
-
1340
- <!-- Project Summary diff report-->
1341
- <xsl:template name="diffProjectSummary">
1342
- <xsl:param name="threshold" />
1343
- <xsl:param name="unvisitedTitle" />
1344
- <xsl:param name="coverageTitle" />
1345
- <!--The Total points or methods-->
1346
- <xsl:variable name="total">
1347
- <xsl:call-template name="gettotal">
1348
- <xsl:with-param name="stats" select="$projectstats" />
1349
- </xsl:call-template>
1350
- </xsl:variable>
1351
-
1352
- <xsl:call-template name="diffSectionTableHeader">
1353
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1354
- <xsl:with-param name="sectionTitle">Project</xsl:with-param>
1355
- <xsl:with-param name="cellClass">projectTable</xsl:with-param>
1356
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1357
- </xsl:call-template>
1358
-
1359
- <xsl:call-template name="diffCoverageDetail">
1360
- <xsl:with-param name="name">
1361
- <xsl:choose>
1362
- <xsl:when test="string-length($reportName) > 0">
1363
- <xsl:value-of select="$reportName" />
1364
- </xsl:when>
1365
- <xsl:otherwise>&#160;</xsl:otherwise>
1366
- </xsl:choose>
1367
- </xsl:with-param>
1368
- <xsl:with-param name="stats" select="$projectstats" />
1369
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1370
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1371
- </xsl:call-template>
1372
- </xsl:template>
1373
-
1374
- <!--Build the header for each of the sections.
1375
- It removes the complexity of building the multi table headers for the project and then the modules-->
1376
- <xsl:template name="diffSectionTableHeader">
1377
- <xsl:param name="coverageTitle" />
1378
- <xsl:param name="sectionTitle" />
1379
- <xsl:param name="cellClass" />
1380
- <xsl:param name="showThreshold" />
1381
-
1382
- <!--We want to determine how many items can be shows above a percent-->
1383
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1384
- <xsl:if test="$qualifiedmethods > 0">
1385
- <!--white space-->
1386
- <tr>
1387
- <td colspan="{$tablecolumns}">&#160;</td>
1388
- </tr>
1389
-
1390
- <!--Top row showing SP and BP Data-->
1391
- <tr>
1392
- <td class="{$cellClass} mtHdLeftTop">&#160;</td>
1393
- <td class="{$cellClass} mtHdRightTop" colspan="3">
1394
- Sequence Points %
1395
- </td>
1396
- <xsl:if test="$reportBranchPoints">
1397
- <td class="{$cellClass} mtHdRightTop" colspan="3">
1398
- Branch Points %
1399
- </td>
1400
- </xsl:if>
1401
- <td class="{$cellClass} mtHdRightTop" colspan="3">
1402
- Line Visits %
1403
- </td>
1404
- <td class="{$cellClass} mtHdRightTop" colspan="3">
1405
- Method Visits %
1406
- </td>
1407
- <xsl:if test="$reportCC">
1408
- <td class="{$cellClass} mtHdRightTop" colspan="3">
1409
- C.C.
1410
- </td>
1411
- </xsl:if>
1412
- </tr>
1413
-
1414
-
1415
- <tr>
1416
- <td class="{$cellClass} mtHdLeft">
1417
- <xsl:value-of select="$sectionTitle" disable-output-escaping="yes" />
1418
- </td>
1419
- <td class="{$cellClass} mtHd">Was</td>
1420
- <td class="{$cellClass} mtHd">Now</td>
1421
- <td class="{$cellClass} mtHd">Diff</td>
1422
-
1423
-
1424
- <xsl:if test="$reportBranchPoints">
1425
- <td class="{$cellClass} mtHd">Was</td>
1426
- <td class="{$cellClass} mtHd">Now</td>
1427
- <td class="{$cellClass} mtHd">Diff</td>
1428
- </xsl:if>
1429
-
1430
- <td class="{$cellClass} mtHd">Was</td>
1431
- <td class="{$cellClass} mtHd">Now</td>
1432
- <td class="{$cellClass} mtHd">Diff</td>
1433
-
1434
- <td class="{$cellClass} mtHd">Was</td>
1435
- <td class="{$cellClass} mtHd">Now</td>
1436
- <td class="{$cellClass} mtHd">Diff</td>
1437
-
1438
- <xsl:if test="$reportCC">
1439
- <td class="{$cellClass} mtHd">Was</td>
1440
- <td class="{$cellClass} mtHd">Now</td>
1441
- <td class="{$cellClass} mtHd">Diff</td>
1442
- </xsl:if>
1443
- </tr>
1444
- </xsl:if>
1445
- </xsl:template>
1446
-
1447
- <xsl:template name="diffCoverageDetail">
1448
- <xsl:param name="name" />
1449
- <xsl:param name="stats" />
1450
- <xsl:param name="showThreshold" />
1451
- <xsl:param name="showBottomLine" />
1452
- <!--By default this needs to be unvisited count-->
1453
- <xsl:param name="countText">
1454
- <xsl:call-template name="unvisiteditems">
1455
- <xsl:with-param name="stats" select="$stats" />
1456
- </xsl:call-template>
1457
- </xsl:param>
1458
- <xsl:param name="styleTweak" />
1459
- <xsl:param name="scale" select="$graphscale" />
1460
-
1461
- <xsl:variable name="totalsymbol" select="$stats/@vsp + $stats/@usp" />
1462
- <xsl:variable name="totalsymbol-diff" select="$stats/@dvsp + $stats/@dusp" />
1463
- <xsl:variable name="totalbranch" select="$stats/@vbp + $stats/@ubp" />
1464
- <xsl:variable name="totalbranch-diff" select="$stats/@dvbp + $stats/@dubp" />
1465
- <xsl:variable name="totalline" select="$stats/@vl + $stats/@ul" />
1466
- <xsl:variable name="totalline-diff" select="$stats/@dvl + $stats/@dul" />
1467
- <xsl:variable name="totalmethod" select="$stats/@vm + $stats/@um" />
1468
- <xsl:variable name="totalmethod-diff" select="$stats/@dvm + $stats/@dum" />
1469
-
1470
- <xsl:variable name="coveragesymbol">
1471
- <xsl:choose>
1472
- <xsl:when test="$totalsymbol = 0">-</xsl:when>
1473
- <xsl:otherwise>
1474
- <xsl:value-of select="($stats/@vsp div $totalsymbol) * 100" />
1475
- </xsl:otherwise>
1476
- </xsl:choose>
1477
- </xsl:variable>
1478
-
1479
- <xsl:variable name="coveragesymbol-diff">
1480
- <xsl:choose>
1481
- <xsl:when test="$totalsymbol-diff = 0">-</xsl:when>
1482
- <xsl:otherwise>
1483
- <xsl:value-of select="($stats/@dvsp div $totalsymbol-diff) * 100" />
1484
- </xsl:otherwise>
1485
- </xsl:choose>
1486
- </xsl:variable>
1487
-
1488
- <xsl:variable name="coveragebranch">
1489
- <xsl:choose>
1490
- <xsl:when test="$totalbranch = 0">-</xsl:when>
1491
- <xsl:otherwise>
1492
- <xsl:value-of select="($stats/@vbp div $totalbranch) * 100" />
1493
- </xsl:otherwise>
1494
- </xsl:choose>
1495
- </xsl:variable>
1496
-
1497
- <xsl:variable name="coveragebranch-diff">
1498
- <xsl:choose>
1499
- <xsl:when test="$totalbranch-diff = 0">-</xsl:when>
1500
- <xsl:otherwise>
1501
- <xsl:value-of select="($stats/@dvbp div $totalbranch-diff) * 100" />
1502
- </xsl:otherwise>
1503
- </xsl:choose>
1504
- </xsl:variable>
1505
-
1506
- <xsl:variable name="coverageline">
1507
- <xsl:choose>
1508
- <xsl:when test="$totalline = 0">-</xsl:when>
1509
- <xsl:otherwise>
1510
- <xsl:value-of select="($stats/@vl div $totalline) * 100" />
1511
- </xsl:otherwise>
1512
- </xsl:choose>
1513
- </xsl:variable>
1514
-
1515
- <xsl:variable name="coverageline-diff">
1516
- <xsl:choose>
1517
- <xsl:when test="$totalline-diff = 0">-</xsl:when>
1518
- <xsl:otherwise>
1519
- <xsl:value-of select="($stats/@dvl div $totalline-diff) * 100" />
1520
- </xsl:otherwise>
1521
- </xsl:choose>
1522
- </xsl:variable>
1523
-
1524
- <xsl:variable name="coveragemethod">
1525
- <xsl:choose>
1526
- <xsl:when test="$totalmethod = 0">-</xsl:when>
1527
- <xsl:otherwise>
1528
- <xsl:value-of select="($stats/@vm div $totalmethod) * 100" />
1529
- </xsl:otherwise>
1530
- </xsl:choose>
1531
- </xsl:variable>
1532
-
1533
- <xsl:variable name="coveragemethod-diff">
1534
- <xsl:choose>
1535
- <xsl:when test="$totalmethod-diff = 0">-</xsl:when>
1536
- <xsl:otherwise>
1537
- <xsl:value-of select="($stats/@dvm div $totalmethod-diff) * 100" />
1538
- </xsl:otherwise>
1539
- </xsl:choose>
1540
- </xsl:variable>
1541
-
1542
- <!--We want to determine how many items can be shows above a percent-->
1543
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1544
- <xsl:if test="$qualifiedmethods > 0">
1545
- <tr>
1546
- <td>
1547
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mtcItem</xsl:attribute>
1548
- <xsl:if test="$styleTweak != ''" xml:space="preserve"><xsl:attribute name="style"><xsl:value-of select="$styleTweak"/></xsl:attribute></xsl:if>
1549
- <div class="mtDiv">
1550
- <xsl:value-of select="$name" />
1551
- </div>
1552
- </td>
1553
-
1554
- <td>
1555
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1556
- <xsl:call-template name="printcoverage">
1557
- <xsl:with-param name="coverage" select="$coveragesymbol-diff"></xsl:with-param>
1558
- <xsl:with-param name="nopercent" select="'1'"/>
1559
- </xsl:call-template>
1560
- </td>
1561
-
1562
- <td>
1563
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1564
- <xsl:call-template name="printcoverage">
1565
- <xsl:with-param name="coverage" select="$coveragesymbol"></xsl:with-param>
1566
- <xsl:with-param name="nopercent" select="'1'"/>
1567
- </xsl:call-template>
1568
- </td>
1569
-
1570
- <td>
1571
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR1 <xsl:choose><xsl:when test="$coveragesymbol - $coveragesymbol-diff &lt; 0"> dn</xsl:when><xsl:when test="$coveragesymbol - $coveragesymbol-diff &gt; 0"> up</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></xsl:attribute>
1572
- <xsl:call-template name="printcoverage">
1573
- <xsl:with-param name="coverage" select="$coveragesymbol - $coveragesymbol-diff"></xsl:with-param>
1574
- <xsl:with-param name="nopercent" select="'1'"/>
1575
- </xsl:call-template>
1576
- </td>
1577
-
1578
- <!--This section can be hard coded to branch points since that is all that it does.-->
1579
- <xsl:if test="$reportBranchPoints">
1580
- <td>
1581
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1582
- <xsl:call-template name="printcoverage">
1583
- <xsl:with-param name="coverage" select="$coveragebranch-diff"></xsl:with-param>
1584
- <xsl:with-param name="nopercent" select="'1'"/>
1585
- </xsl:call-template>
1586
- </td>
1587
-
1588
- <td>
1589
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1590
- <xsl:call-template name="printcoverage">
1591
- <xsl:with-param name="coverage" select="$coveragebranch"></xsl:with-param>
1592
- <xsl:with-param name="nopercent" select="'1'"/>
1593
- </xsl:call-template>
1594
- </td>
1595
-
1596
- <td>
1597
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR1 <xsl:choose><xsl:when test="$coveragebranch - $coveragebranch-diff &lt; 0"> dn</xsl:when><xsl:when test="$coveragebranch - $coveragebranch-diff &gt; 0"> up</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></xsl:attribute>
1598
- <xsl:call-template name="printcoverage">
1599
- <xsl:with-param name="coverage" select=" $coveragebranch - $coveragebranch-diff"></xsl:with-param>
1600
- <xsl:with-param name="nopercent" select="'1'"/>
1601
- </xsl:call-template>
1602
- </td>
1603
- </xsl:if>
1604
-
1605
- <td>
1606
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1607
- <xsl:call-template name="printcoverage">
1608
- <xsl:with-param name="coverage" select="$coverageline-diff"></xsl:with-param>
1609
- <xsl:with-param name="nopercent" select="'1'"/>
1610
- </xsl:call-template>
1611
- </td>
1612
-
1613
- <td>
1614
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1615
- <xsl:call-template name="printcoverage">
1616
- <xsl:with-param name="coverage" select="$coverageline"></xsl:with-param>
1617
- <xsl:with-param name="nopercent" select="'1'"/>
1618
- </xsl:call-template>
1619
- </td>
1620
-
1621
- <td>
1622
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR1 <xsl:choose><xsl:when test="$coverageline - $coverageline-diff &lt; 0"> dn</xsl:when><xsl:when test="$coverageline - $coverageline-diff &gt; 0"> up</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></xsl:attribute>
1623
- <xsl:call-template name="printcoverage">
1624
- <xsl:with-param name="coverage" select="$coverageline - $coverageline-diff"></xsl:with-param>
1625
- <xsl:with-param name="nopercent" select="'1'"/>
1626
- </xsl:call-template>
1627
- </td>
1628
-
1629
-
1630
- <td>
1631
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1632
- <xsl:call-template name="printcoverage">
1633
- <xsl:with-param name="coverage" select="$coveragemethod-diff"></xsl:with-param>
1634
- <xsl:with-param name="nopercent" select="'1'"/>
1635
- </xsl:call-template>
1636
- </td>
1637
-
1638
- <td>
1639
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1640
- <xsl:call-template name="printcoverage">
1641
- <xsl:with-param name="coverage" select="$coveragemethod"></xsl:with-param>
1642
- <xsl:with-param name="nopercent" select="'1'"/>
1643
- </xsl:call-template>
1644
- </td>
1645
-
1646
- <td>
1647
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR1 <xsl:choose><xsl:when test="$coveragemethod - $coveragemethod-diff &lt; 0"> dn</xsl:when><xsl:when test="$coveragemethod - $coveragemethod-diff &gt; 0"> up</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></xsl:attribute>
1648
- <xsl:call-template name="printcoverage">
1649
- <xsl:with-param name="coverage" select="$coveragemethod - $coveragemethod-diff"></xsl:with-param>
1650
- <xsl:with-param name="nopercent" select="'1'"/>
1651
- </xsl:call-template>
1652
- </td>
1653
-
1654
- <xsl:if test="$reportCC">
1655
- <td>
1656
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1657
- <xsl:choose>
1658
- <xsl:when test="$stats/@diffdata = 1">
1659
- <xsl:value-of select="format-number($stats/@dccavg,'#0.0')" /> / <xsl:value-of select="$stats/@dccmax" />
1660
- </xsl:when>
1661
- <xsl:otherwise>
1662
- -
1663
- </xsl:otherwise>
1664
- </xsl:choose>
1665
-
1666
- </td>
1667
-
1668
- <td>
1669
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1670
- <xsl:value-of select="format-number($stats/@ccavg,'#0.0')" /> / <xsl:value-of select="$stats/@ccmax" />
1671
- </td>
1672
-
1673
-
1674
- <td>
1675
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR <xsl:choose><xsl:when test="$stats/@ccmax - $stats/@dccmax &lt; 0"> dn</xsl:when><xsl:when test="$stats/@ccmax - $stats/@dccmax &gt; 0"> up</xsl:when><xsl:otherwise></xsl:otherwise></xsl:choose></xsl:attribute>
1676
- <xsl:choose>
1677
- <xsl:when test="$stats/@diffdata = 1">
1678
- <xsl:value-of select="format-number($stats/@ccavg - $stats/@dccavg,'#0.0')" /> / <xsl:value-of select="$stats/@ccmax - $stats/@dccmax" />
1679
- </xsl:when>
1680
- <xsl:otherwise>
1681
- -
1682
- </xsl:otherwise>
1683
- </xsl:choose>
1684
- </td>
1685
-
1686
- </xsl:if>
1687
- </tr>
1688
- </xsl:if>
1689
- </xsl:template>
1690
-
1691
- <!--End Diff Templates-->
1692
-
1693
- <!--Begin Trends Templates-->
1694
- <!--summaryCommon-->
1695
- <xsl:template name="trendsSummaryCommon">
1696
- <xsl:param name="threshold" />
1697
- <xsl:param name="unvisitedTitle" />
1698
- <xsl:param name="coverageTitle">Coverage</xsl:param>
1699
- <xsl:param name="printClasses" />
1700
- <xsl:param name="printMethods" />
1701
- <!--Don't show anything if the data does not exist.-->
1702
- <xsl:if test="$trendsdataexist">
1703
- <xsl:for-each select="$root/mod[string(stats/@ex) != '1']">
1704
- <!--We want to determine how many items can be shows above a percent-->
1705
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1706
- <xsl:if test="$qualifiedmethods > 0">
1707
- <xsl:variable name="modstats" select="stats[last()]" />
1708
-
1709
- <xsl:call-template name="trendsSectionTableHeader">
1710
- <xsl:with-param name="unvisitedTitle" select="'U.V.'" />
1711
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1712
- <xsl:with-param name="sectionTitle">Module</xsl:with-param>
1713
- <xsl:with-param name="cellClass">secondaryTable</xsl:with-param>
1714
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1715
- </xsl:call-template>
1716
-
1717
- <xsl:call-template name="trendsCoverageDetail">
1718
- <xsl:with-param name="name" select="assembly" />
1719
- <xsl:with-param name="stats" select="$modstats" />
1720
- <xsl:with-param name="showTrendGraph">True</xsl:with-param>
1721
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1722
- </xsl:call-template>
1723
- <tr>
1724
- <td class="secondaryChildTable ctHeader" valign="bottom">
1725
- <xsl:attribute name="colspan" xml:space="preserve"><xsl:choose><xsl:when test="$threshold = 'True'"><xsl:value-of select="$tablecolumns"/></xsl:when><xsl:otherwise><xsl:value-of select="$tablecolumns"/></xsl:otherwise></xsl:choose></xsl:attribute>
1726
- Namespace <xsl:if test="$printClasses = 'True'"> / Classes</xsl:if>
1727
- </td>
1728
- </tr>
1729
- <!--print the Namespaces classes and methods-->
1730
- <xsl:call-template name="namespaceClassMethodSummary">
1731
- <xsl:with-param name="printClasses" select="$printClasses" />
1732
- <xsl:with-param name="printMethods" select="$printMethods" />
1733
- </xsl:call-template>
1734
- </xsl:if>
1735
- </xsl:for-each>
1736
- </xsl:if>
1737
- </xsl:template>
1738
-
1739
- <xsl:template name="trendTDAttributes">
1740
- <xsl:param name="stats" />
1741
- <xsl:param name="threshold" />
1742
- <xsl:attribute name="colspan" xml:space="preserve"><xsl:choose><xsl:when test="$threshold = 'True'">6</xsl:when><xsl:otherwise>5</xsl:otherwise></xsl:choose></xsl:attribute>
1743
- <xsl:attribute xml:space="preserve" name="data"><xsl:for-each select="$stats/tp"><xsl:value-of select="format-number(@v,'#0')"/><xsl:if test="position() != last()">,</xsl:if></xsl:for-each></xsl:attribute>
1744
- <xsl:attribute xml:space="preserve" name="min"><xsl:call-template name="trendThreshold"><xsl:with-param name="stats" select="$stats" /></xsl:call-template></xsl:attribute>
1745
- Enable Javascript for Trend Graph (see IE Warning on top of browser)
1746
- </xsl:template>
1747
-
1748
- <!-- projectSummary -->
1749
- <xsl:template name="trendsProjectSummary">
1750
- <xsl:param name="threshold" />
1751
- <xsl:param name="unvisitedTitle" />
1752
- <xsl:param name="coverageTitle" />
1753
- <!--The Total points or methods-->
1754
- <xsl:variable name="total">
1755
- <xsl:call-template name="gettotal">
1756
- <xsl:with-param name="stats" select="$projectstats" />
1757
- </xsl:call-template>
1758
- </xsl:variable>
1759
-
1760
- <!--Don't show anything if the data does not exist.-->
1761
- <xsl:if test="$trendsdataexist">
1762
- <xsl:call-template name="trendsSectionTableHeader">
1763
- <xsl:with-param name="unvisitedTitle" select="$unvisitedTitle" />
1764
- <xsl:with-param name="coverageTitle" select="$coverageTitle" />
1765
- <xsl:with-param name="sectionTitle">Project</xsl:with-param>
1766
- <xsl:with-param name="cellClass">projectTable</xsl:with-param>
1767
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1768
- </xsl:call-template>
1769
-
1770
- <xsl:call-template name="trendsCoverageDetail">
1771
- <xsl:with-param name="name">
1772
- <xsl:choose>
1773
- <xsl:when test="string-length($reportName) > 0">
1774
- <xsl:value-of select="$reportName" />
1775
- </xsl:when>
1776
- <xsl:otherwise>&#160;</xsl:otherwise>
1777
- </xsl:choose>
1778
- </xsl:with-param>
1779
- <xsl:with-param name="stats" select="$projectstats" />
1780
- <xsl:with-param name="showTrendGraph">True</xsl:with-param>
1781
- <xsl:with-param name="showThreshold">True</xsl:with-param>
1782
- <xsl:with-param name="showBottomLine">True</xsl:with-param>
1783
- </xsl:call-template>
1784
- </xsl:if>
1785
- </xsl:template>
1786
-
1787
-
1788
- <!-- sectionTableHeader -->
1789
- <!--Build the header for each of the sections.
1790
- It removes the complexity of building the multi table headers for the project and then the modules-->
1791
- <xsl:template name="trendsSectionTableHeader">
1792
- <xsl:param name="unvisitedTitle" />
1793
- <xsl:param name="coverageTitle" />
1794
- <xsl:param name="sectionTitle" />
1795
- <xsl:param name="cellClass" />
1796
- <xsl:param name="showThreshold" />
1797
-
1798
- <!--We want to determine how many items can be shows above a percent-->
1799
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1800
- <xsl:if test="$qualifiedmethods > 0">
1801
- <!--white space-->
1802
- <tr>
1803
- <td colspan="{$tablecolumns}">&#160;</td>
1804
- </tr>
1805
-
1806
- <tr>
1807
- <td class="{$cellClass} mtHdLeftTop">&#160;</td>
1808
- <td class="{$cellClass} mtHdRightTop">
1809
- <xsl:attribute name="colspan" xml:space="preserve"><xsl:choose><xsl:when test="$showThreshold = 'True'">5</xsl:when><xsl:otherwise>4</xsl:otherwise></xsl:choose></xsl:attribute>
1810
- <xsl:choose>
1811
- <xsl:when test="$trendCoverageMetric = 'SequencePoints' or $trendCoverageMetric = 'SymbolCoverage'">Symbol Coverage</xsl:when>
1812
- <xsl:when test="$trendCoverageMetric = 'BranchPoints' or $trendCoverageMetric = 'BranchCoverage'">Branch Coverage</xsl:when>
1813
- <xsl:when test="$trendCoverageMetric = 'MethodCoverage'">Method Coverage</xsl:when>
1814
- <xsl:when test="$trendCoverageMetric = 'LineCoverage'">Line Coverage</xsl:when>
1815
- <xsl:when test="$trendCoverageMetric = 'CyclomaticComplexity'">Cyclomatic Complexity Coverage</xsl:when>
1816
- <xsl:otherwise>Unknown Coverage</xsl:otherwise>
1817
- </xsl:choose>
1818
- </td>
1819
- </tr>
1820
-
1821
- <tr>
1822
- <td>
1823
- <xsl:attribute xml:space="preserve" name="class"><xsl:value-of select="$cellClass" /><xsl:choose><xsl:when test="$isFunctionReport"> mtHdLeftFunc</xsl:when><xsl:otherwise> mtHdLeft</xsl:otherwise></xsl:choose></xsl:attribute>
1824
- <xsl:value-of select="$sectionTitle" disable-output-escaping="yes" />
1825
- </td>
1826
- <xsl:if test="$showThreshold = 'True'">
1827
- <td class="{$cellClass} mtHd">Accept</td>
1828
- </xsl:if>
1829
- <td class="{$cellClass} mtHd">
1830
- Min %
1831
- </td>
1832
- <td class="{$cellClass} mtHd">
1833
- Max %
1834
- </td>
1835
- <td class="{$cellClass} mtHd">
1836
- Cov %
1837
- </td>
1838
- <td class="{$cellClass} mtHd">
1839
- Trend
1840
- </td>
1841
- </tr>
1842
- </xsl:if>
1843
- </xsl:template>
1844
-
1845
- <!-- coverageDetail -->
1846
- <!-- Coverage detail row in main grid displaying a name, statistics and graph bar -->
1847
- <xsl:template name="trendsCoverageDetail">
1848
- <xsl:param name="name" />
1849
- <xsl:param name="stats" />
1850
- <xsl:param name="showTrendGraph" />
1851
- <xsl:param name="showThreshold" />
1852
- <xsl:param name="showBottomLine" />
1853
- <!--By default this needs to be unvisited count-->
1854
- <xsl:param name="countText">
1855
- <xsl:call-template name="unvisiteditems">
1856
- <xsl:with-param name="stats" select="$stats" />
1857
- </xsl:call-template>
1858
- </xsl:param>
1859
- <xsl:param name="styleTweak" />
1860
- <xsl:param name="scale" select="$graphscale" />
1861
- <xsl:variable name="total">
1862
- <xsl:choose xml:space="preserve">
1863
- <xsl:when test="$trendCoverageMetric = 'SequencePoints' or $trendCoverageMetric = 'SymbolCoverage'"><xsl:value-of select="$stats/@usp + $stats/@vsp" /></xsl:when>
1864
- <xsl:when test="$trendCoverageMetric = 'BranchPoints' or $trendCoverageMetric = 'BranchCoverage'"><xsl:value-of select="$stats/@ubp + $stats/@vbp" /></xsl:when>
1865
- <xsl:when test="$trendCoverageMetric = 'MethodCoverage'"><xsl:value-of select="$stats/@um + $stats/@vm" /></xsl:when>
1866
- <xsl:when test="$trendCoverageMetric = 'LineCoverage'"><xsl:value-of select="$stats/@ul + $stats/@vl" /></xsl:when>
1867
- <xsl:when test="$trendCoverageMetric = 'CyclomaticComplexity'"><xsl:value-of select="$stats/@ccmax" /></xsl:when>
1868
- <xsl:otherwise>0</xsl:otherwise>
1869
- </xsl:choose>
1870
- </xsl:variable>
1871
- <xsl:variable name="coverage">
1872
- <xsl:choose xml:space="preserve">
1873
- <xsl:when test="$total = 0">-</xsl:when>
1874
- <xsl:when test="$trendCoverageMetric = 'SequencePoints' or $trendCoverageMetric = 'SymbolCoverage'"><xsl:value-of select="($stats/@vsp div $total) * 100" /></xsl:when>
1875
- <xsl:when test="$trendCoverageMetric = 'BranchPoints' or $trendCoverageMetric = 'BranchCoverage'"><xsl:value-of select="($stats/@vbp div $total) * 100" /></xsl:when>
1876
- <xsl:when test="$trendCoverageMetric = 'MethodCoverage'"><xsl:value-of select="($stats/@vm div $total) * 100" /></xsl:when>
1877
- <xsl:when test="$trendCoverageMetric = 'LineCoverage'"><xsl:value-of select="($stats/@vl div $total) * 100" /></xsl:when>
1878
- <xsl:when test="$trendCoverageMetric = 'CyclomaticComplexity'">-</xsl:when>
1879
- <xsl:otherwise>-</xsl:otherwise>
1880
- </xsl:choose>
1881
- </xsl:variable>
1882
- <xsl:variable name="threshold">
1883
- <xsl:call-template name="trendThreshold">
1884
- <xsl:with-param name="stats" select="$stats" />
1885
- </xsl:call-template>
1886
- </xsl:variable>
1887
- <!--We need to set the class for the coverage-->
1888
- <xsl:variable name="coverageclass" xml:space="preserve"><xsl:choose><xsl:when test="$coverage = '-' or threshold = '-'"></xsl:when><xsl:when test="$coverage &gt;= $threshold">up</xsl:when><xsl:when test="$coverage &lt; $threshold">dn</xsl:when></xsl:choose></xsl:variable>
1889
- <xsl:variable name="min" xml:space="preserve"><xsl:call-template name="min"><xsl:with-param name="pSeq" select="$stats/tp[@v > -1]/@v"></xsl:with-param></xsl:call-template></xsl:variable>
1890
- <xsl:variable name="max" xml:space="preserve"><xsl:call-template name="max"><xsl:with-param name="pSeq" select="$stats/tp/@v"></xsl:with-param></xsl:call-template></xsl:variable>
1891
- <xsl:variable name="firsttrend" xml:space="preserve"><xsl:choose><xsl:when test="$stats/tp[position() = 1]/@v = -1">0</xsl:when><xsl:otherwise><xsl:value-of select="$stats/tp[position() = 1]/@v"/></xsl:otherwise></xsl:choose></xsl:variable>
1892
- <xsl:variable name="lasttrend" xml:space="preserve"><xsl:choose><xsl:when test="$stats/tp[position() = last()]/@v = -1">0</xsl:when><xsl:otherwise><xsl:value-of select="$stats/tp[position() = last()]/@v"/></xsl:otherwise></xsl:choose></xsl:variable>
1893
- <xsl:variable name="fulltrendamount" xml:space="preserve"><xsl:value-of select="$lasttrend - $firsttrend"/></xsl:variable>
1894
- <xsl:variable name="fulltrendclass" xml:space="preserve"><xsl:choose><xsl:when test="$fulltrendamount &gt; 0">up</xsl:when><xsl:when test="$fulltrendamount &lt; 0">dn</xsl:when></xsl:choose></xsl:variable>
1895
-
1896
- <!--We want to determine how many items can be shows above a percent-->
1897
- <xsl:variable xml:space="preserve" name="qualifiedmethods"><xsl:call-template name="qualifiednodes" /></xsl:variable>
1898
- <xsl:if test="$qualifiedmethods > 0">
1899
- <tr>
1900
- <xsl:choose>
1901
- <xsl:when test="$showThreshold='True'">
1902
- <td>
1903
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mtcItem</xsl:attribute>
1904
- <xsl:attribute name="style">padding-right:0px;<xsl:value-of select="$styleTweak"/></xsl:attribute>
1905
- <xsl:choose>
1906
- <xsl:when test="$showTrendGraph='True'">
1907
- <table width="100%" padding="0" cellpadding="0" cellspacing="0" border="0">
1908
- <tr>
1909
- <td>
1910
- <div class="trendTitle">
1911
- <xsl:value-of select="$name" />
1912
- </div>
1913
- </td>
1914
- <td align="right">
1915
- <div class="trGr" style="width:200px;border: 1px solid black;">
1916
- <xsl:call-template name="trendTDAttributes">
1917
- <xsl:with-param name="stats" select="./stats" />
1918
- <xsl:with-param name="threshold" select="$showThreshold" />
1919
- </xsl:call-template>
1920
- </div>
1921
- </td>
1922
- </tr>
1923
- </table>
1924
- </xsl:when>
1925
- <xsl:otherwise>
1926
- <div class="mtDiv">
1927
- <xsl:value-of select="$name" />
1928
- </div>
1929
- </xsl:otherwise>
1930
- </xsl:choose>
1931
- </td>
1932
- <td>
1933
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1934
- <xsl:value-of select="concat(format-number($threshold,'#0.0'), ' %')" />
1935
- </td>
1936
- </xsl:when>
1937
- <xsl:otherwise>
1938
- <td colspan="2">
1939
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mtcItem</xsl:attribute>
1940
- <xsl:if test="$styleTweak != ''" xml:space="preserve"><xsl:attribute name="style"><xsl:value-of select="$styleTweak"/></xsl:attribute></xsl:if>
1941
- <div class="mtDiv">
1942
- <xsl:value-of select="$name" />
1943
- </div>
1944
- </td>
1945
- </xsl:otherwise>
1946
- </xsl:choose>
1947
- <td>
1948
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1949
- <xsl:choose>
1950
- <xsl:when test="string($min) = ''">-</xsl:when>
1951
- <xsl:otherwise>
1952
- <xsl:value-of select="format-number($min,'#0.0')"/>
1953
- </xsl:otherwise>
1954
- </xsl:choose>
1955
- </td>
1956
- <td>
1957
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mR</xsl:attribute>
1958
- <xsl:choose>
1959
- <xsl:when test="string($max) = ''">-</xsl:when>
1960
- <xsl:otherwise>
1961
- <xsl:value-of select="format-number($max,'#0.0')"/>
1962
- </xsl:otherwise>
1963
- </xsl:choose>
1964
- </td>
1965
- <td>
1966
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if> mR <xsl:value-of select="$coverageclass"/></xsl:attribute>
1967
- <xsl:choose>
1968
- <xsl:when test="string($coverage) = 'NaN' or $coverage = '-'">
1969
- -
1970
- </xsl:when>
1971
- <xsl:otherwise>
1972
- <xsl:value-of select="format-number($coverage,'#0.0')"/>
1973
- </xsl:otherwise>
1974
- </xsl:choose>
1975
- </td>
1976
- <td>
1977
- <xsl:attribute xml:space="preserve" name="class"><xsl:if test="$showBottomLine = 'True'">mb </xsl:if>mPt mR <xsl:value-of select="$fulltrendclass"/></xsl:attribute>
1978
- <!--<xsl:attribute xml:space="preserve" name="data"><xsl:if test="name(.) != 'class' and name(.) != 'method'"><xsl:for-each select="./stats/tp"><xsl:value-of select="format-number(@v,'#0')"/><xsl:if test="position() != last()">,</xsl:if></xsl:for-each></xsl:if></xsl:attribute>-->
1979
- <xsl:value-of select="format-number($fulltrendamount,'#0.0')"/>
1980
- </td>
1981
- </tr>
1982
- </xsl:if>
1983
- </xsl:template>
1984
-
1985
- <xsl:template name="trendThreshold">
1986
- <xsl:param name="stats" />
1987
- <xsl:choose xml:space="preserve">
1988
- <xsl:when test="$trendCoverageMetric = 'SequencePoints' or $trendCoverageMetric = 'SymbolCoverage'"><xsl:value-of select="$stats/@acp" /></xsl:when>
1989
- <xsl:when test="$trendCoverageMetric = 'BranchPoints' or $trendCoverageMetric = 'BranchCoverage'"><xsl:value-of select="$stats/@abp" /></xsl:when>
1990
- <xsl:when test="$trendCoverageMetric = 'MethodCoverage'"><xsl:value-of select="$stats/@afp" /></xsl:when>
1991
- <xsl:when test="$trendCoverageMetric = 'LineCoverage'">-</xsl:when>
1992
- <xsl:when test="$trendCoverageMetric = 'CyclomaticComplexity'"><xsl:value-of select="$stats/@acc" /></xsl:when>
1993
- <xsl:otherwise>-</xsl:otherwise>
1994
- </xsl:choose>
1995
- </xsl:template>
1996
- <!--End Trends Templates-->
1997
-
1998
- <xsl:template name="min">
1999
- <xsl:param name="pSeq"/>
2000
- <xsl:variable name="vLen" select="count($pSeq)"/>
2001
- <xsl:if test="$vLen > 0">
2002
- <xsl:choose>
2003
- <xsl:when test="$vLen = 1">
2004
- <xsl:value-of select="$pSeq[1]"/>
2005
- </xsl:when>
2006
- <xsl:otherwise>
2007
- <xsl:variable name="vHalf" select="floor($vLen div 2)"/>
2008
- <xsl:variable name="v1">
2009
- <xsl:call-template name="min">
2010
- <xsl:with-param name="pSeq" select="$pSeq[not(position() > $vHalf)]"/>
2011
- </xsl:call-template>
2012
- </xsl:variable>
2013
- <xsl:variable name="v2">
2014
- <xsl:call-template name="min">
2015
- <xsl:with-param name="pSeq" select="$pSeq[position() > $vHalf]"/>
2016
- </xsl:call-template>
2017
- </xsl:variable>
2018
- <xsl:choose>
2019
- <xsl:when test="$v1 &lt;= $v2">
2020
- <xsl:value-of select="$v1"/>
2021
- </xsl:when>
2022
- <xsl:otherwise>
2023
- <xsl:value-of select="$v2"/>
2024
- </xsl:otherwise>
2025
- </xsl:choose>
2026
- </xsl:otherwise>
2027
- </xsl:choose>
2028
- </xsl:if>
2029
- </xsl:template>
2030
-
2031
- <xsl:template name="max">
2032
- <xsl:param name="pSeq"/>
2033
- <xsl:variable name="vLen" select="count($pSeq)"/>
2034
- <xsl:if test="$vLen > 0">
2035
- <xsl:choose>
2036
- <xsl:when test="$vLen = 1">
2037
- <xsl:value-of select="$pSeq[1]"/>
2038
- </xsl:when>
2039
- <xsl:otherwise>
2040
- <xsl:variable name="vHalf" select="floor($vLen div 2)"/>
2041
- <xsl:variable name="v1">
2042
- <xsl:call-template name="max">
2043
- <xsl:with-param name="pSeq" select="$pSeq[not(position() > $vHalf)]"/>
2044
- </xsl:call-template>
2045
- </xsl:variable>
2046
- <xsl:variable name="v2">
2047
- <xsl:call-template name="max">
2048
- <xsl:with-param name="pSeq" select="$pSeq[position() > $vHalf]"/>
2049
- </xsl:call-template>
2050
- </xsl:variable>
2051
- <xsl:choose>
2052
- <xsl:when test="$v1 >= $v2">
2053
- <xsl:value-of select="$v1"/>
2054
- </xsl:when>
2055
- <xsl:otherwise>
2056
- <xsl:value-of select="$v2"/>
2057
- </xsl:otherwise>
2058
- </xsl:choose>
2059
- </xsl:otherwise>
2060
- </xsl:choose>
2061
- </xsl:if>
2062
- </xsl:template>
2063
-
2064
- <xsl:template name="printcoverage">
2065
- <xsl:param name="coverage" />
2066
- <xsl:param name="twoplaces" select="'0'" />
2067
- <xsl:param name="nopercent" select="'0'" />
2068
- <xsl:choose>
2069
- <xsl:when test="$coverage = 'N/A'">
2070
- <xsl:value-of select="$coverage" />
2071
- </xsl:when>
2072
- <xsl:when test="string($coverage) = '-'">
2073
- -
2074
- </xsl:when>
2075
- <xsl:when test="string($coverage) = 'NaN'">
2076
- -
2077
- </xsl:when>
2078
- <xsl:when test="string($twoplaces) = '1'">
2079
- <xsl:choose>
2080
- <xsl:when test="$nopercent = '1'">
2081
- <xsl:value-of select="format-number($coverage,'#0.00')" />
2082
- </xsl:when>
2083
- <xsl:otherwise>
2084
- <xsl:value-of select="concat(format-number($coverage,'#0.00'), ' %')" />
2085
- </xsl:otherwise>
2086
- </xsl:choose>
2087
- </xsl:when>
2088
- <xsl:otherwise>
2089
- <xsl:choose>
2090
- <xsl:when test="$nopercent = '1'">
2091
- <xsl:value-of select="format-number($coverage,'#0.0')" />
2092
- </xsl:when>
2093
- <xsl:otherwise>
2094
- <xsl:value-of select="concat(format-number($coverage,'#0.0'), ' %')" />
2095
- </xsl:otherwise>
2096
- </xsl:choose>
2097
- </xsl:otherwise>
2098
- </xsl:choose>
2099
- </xsl:template>
2100
-
2101
- <!--Get the total items based on the report-->
2102
- <xsl:template name="gettotal">
2103
- <xsl:param name="stats" />
2104
- <xsl:param name="branch" />
2105
- <xsl:choose>
2106
- <xsl:when test="$isFunctionReport">
2107
- <xsl:value-of select="$stats/@um + $stats/@vm" />
2108
- </xsl:when>
2109
- <xsl:otherwise>
2110
- <xsl:choose>
2111
- <xsl:when test="$branch = 'True'">
2112
- <xsl:value-of select="$stats/@ubp + $stats/@vbp" />
2113
- </xsl:when>
2114
- <xsl:otherwise>
2115
- <xsl:value-of select="$stats/@usp + $stats/@vsp" />
2116
- </xsl:otherwise>
2117
- </xsl:choose>
2118
- </xsl:otherwise>
2119
- </xsl:choose>
2120
- </xsl:template>
2121
-
2122
- <!--Get the total visited items based on the report-->
2123
- <xsl:template name="visiteditems">
2124
- <xsl:param name="stats" />
2125
- <xsl:choose>
2126
- <xsl:when test="$isFunctionReport">
2127
- <xsl:value-of select="$stats/@vm" />
2128
- </xsl:when>
2129
- <xsl:otherwise>
2130
- <xsl:value-of select="$stats/@vsp" />
2131
- </xsl:otherwise>
2132
- </xsl:choose>
2133
- </xsl:template>
2134
-
2135
- <!--Get the total visited items based on the report-->
2136
- <xsl:template name="unvisiteditems">
2137
- <xsl:param name="stats" />
2138
- <xsl:choose>
2139
- <xsl:when test="$isFunctionReport">
2140
- <xsl:value-of select="$stats/@um" />
2141
- </xsl:when>
2142
- <xsl:otherwise>
2143
- <xsl:value-of select="$stats/@usp" />
2144
- </xsl:otherwise>
2145
- </xsl:choose>
2146
- </xsl:template>
2147
-
2148
- <!--How many nodes qualify-->
2149
- <xsl:template name="qualifiednodes" xml:space="preserve"><xsl:choose>
2150
- <!--If show all item exist, then we need to just return 1-->
2151
- <xsl:when test="$isDiffReport"><xsl:choose>
2152
- <xsl:when test="$showAllItems">1</xsl:when>
2153
- <!--One of the items must be at least this diff amount-->
2154
- <xsl:when test="$diffAtLeast &lt; 0"><xsl:value-of select="count(.//stats[
2155
- @diffexists='1'
2156
- and
2157
- (
2158
- (@vsp div (@vsp + @usp)) - (@dvsp div (@dvsp + @dusp)) &lt;= $diffAtLeast div 100
2159
- or
2160
- (@vbp div (@vbp + @ubp)) - (@dvbp div (@dvbp + @dubp)) &lt;= $diffAtLeast div 100
2161
- or
2162
- (@vl div (@vl + @ul)) - (@dvl div (@dvl + @dul)) &lt;= $diffAtLeast div 100
2163
- or
2164
- (@vm div (@vm + @um)) - (@dvm div (@dvm + @dum)) &lt;= $diffAtLeast div 100
2165
- or
2166
- (@ccmax - @dccmax) &lt;= $diffAtLeast
2167
- )
2168
- ])" /></xsl:when>
2169
- <xsl:when test="$diffAtLeast &gt; 0"><xsl:value-of select="count(.//stats[
2170
- @diffexists='1'
2171
- and
2172
- (
2173
- (@vsp div (@vsp + @usp)) - (@dvsp div (@dvsp + @dusp)) &gt;= $diffAtLeast div 100
2174
- or
2175
- (@vbp div (@vbp + @ubp)) - (@dvbp div (@dvbp + @dubp)) &gt;= $diffAtLeast div 100
2176
- or
2177
- (@vl div (@vl + @ul)) - (@dvl div (@dvl + @dul)) &gt;= $diffAtLeast div 100
2178
- or
2179
- (@vm div (@vm + @um)) - (@dvm div (@dvm + @dum)) &gt;= $diffAtLeast div 100
2180
- or
2181
- (@ccmax - @dccmax) &gt;= $diffAtLeast
2182
- )
2183
- ])" /></xsl:when>
2184
- <xsl:otherwise><xsl:value-of select="count(.//stats[@diffexists='1'])" /></xsl:otherwise>
2185
- </xsl:choose></xsl:when>
2186
- <xsl:when test="$isTrendReport">1</xsl:when>
2187
- <xsl:when test="string($atleastpercenttype) = 'branch'"><xsl:choose>
2188
- <xsl:when test="name(.) = 'method'"><xsl:value-of select="count(stats[(@vbp div (@ubp + @vbp)) >= $atleastpercent and (@vbp div (@ubp + @vbp)) &lt;= $atmostpercent])" /></xsl:when>
2189
- <!--if rdf is used we have no way to show the data.-->
2190
- <xsl:when test="count(.//method) = 0">1</xsl:when>
2191
- <xsl:otherwise><xsl:value-of select="count(.//method/stats[(@vbp div (@ubp + @vbp)) >= $atleastpercent and (@vbp div (@ubp + @vbp)) &lt;= $atmostpercent])" /></xsl:otherwise>
2192
- </xsl:choose></xsl:when>
2193
- <xsl:otherwise><xsl:choose>
2194
- <xsl:when test="name(.) = 'method'"><xsl:value-of select="count(stats[(@vsp div (@usp + @vsp)) >= $atleastpercent and (@vsp div (@usp + @vsp)) &lt;= $atmostpercent])" /></xsl:when>
2195
- <!--if rdf is used we have no way to show the data.-->
2196
- <xsl:when test="count(.//method) = 0">1</xsl:when>
2197
- <xsl:otherwise><xsl:value-of select="count(.//method/stats[(@vsp div (@usp + @vsp)) >= $atleastpercent and (@vsp div (@usp + @vsp)) &lt;= $atmostpercent])" /></xsl:otherwise>
2198
- </xsl:choose></xsl:otherwise>
2199
- </xsl:choose></xsl:template>
2200
-
2201
- <xsl:template name="style" xml:space="preserve">
2202
- <style>
2203
- <xsl:text disable-output-escaping="yes">
2204
- body { font: small verdana, arial, helvetica; color:#000000; }
2205
- .coverageReportTable { font-size: 9px; }
2206
- .reportHeader { padding: 5px 8px 5px 8px; font-size: 12px; border: 1px solid; margin: 0px; }
2207
- .titleText { font-weight: bold; font-size: 12px; white-space: nowrap; padding: 0px; margin: 1px; }
2208
- .subtitleText { font-size: 9px; font-weight: normal; padding: 0px; margin: 1px; white-space: nowrap; }
2209
- .projectStatistics { font-size: 10px; border-left: #649cc0 1px solid; white-space: nowrap; width: 40%; }
2210
- .heading { font-weight: bold; }
2211
- .trendTitle { font-weight: bold; font-size: 10px;}
2212
-
2213
- .mtHdLeftTop {
2214
- border-top: #dcdcdc 1px solid;
2215
- border-left: #dcdcdc 1px solid;
2216
- border-right: #dcdcdc 1px solid;
2217
- font-weight: bold;
2218
- padding-left: 5px;
2219
- }
2220
- .mtHdRightTop {
2221
- border-top: #dcdcdc 1px solid;
2222
- border-right: #dcdcdc 1px solid;
2223
- font-weight: bold;
2224
- padding-left: 5px;
2225
- text-align: center;
2226
- }
2227
- .mtHdLeftFunc {
2228
- border: #dcdcdc 1px solid;
2229
- font-weight: bold;
2230
- padding-left: 5px;
2231
- }
2232
- .mtHdLeft {
2233
- border-bottom: #dcdcdc 1px solid;
2234
- border-left: #dcdcdc 1px solid;
2235
- border-right: #dcdcdc 1px solid;
2236
- font-weight: bold;
2237
- padding-left: 5px;
2238
- }
2239
- .mtHd { border-bottom: 1px solid; border-top: 1px solid; border-right: 1px solid; text-align: center; }
2240
-
2241
- .mtHdLeft2 { font-weight: bold; padding-left: 5px; }
2242
- .mtHd2 { text-align: center; }
2243
-
2244
- .mtgHd { border-bottom: 1px solid; border-top: 1px solid; border-right: 1px solid; text-align: left; font-weight: bold; }
2245
- .mtgHd2 { border-bottom: 1px solid; border-top: 1px solid; border-right: 1px solid; text-align: center; font-weight: bold; }
2246
- .mtDiv {width:500px;overflow: hidden;}
2247
-
2248
- .mtcItem { background: #ffffff; border-left: #dcdcdc 1px solid; border-right: #dcdcdc 1px solid; padding-left: 10px; padding-right: 10px; font-weight: bold; font-size: 10px; }
2249
- .mtcData { background: #ffffff; border-right: #dcdcdc 1px solid; text-align: center; white-space: nowrap; }
2250
- .mR { background: #ffffff; border-right: #dcdcdc 1px solid; text-align: right; white-space: nowrap; }
2251
- .mR1 { background: #ffffff; border-right: #999999 1px solid; text-align: right; white-space: nowrap; }
2252
- .mPt { background: #ffffff; font-weight: bold; white-space: nowrap; text-align: right; padding-left: 10px; }
2253
- .tmcGraph { background: #ffffff; border-right: #dcdcdc 1px solid; padding-right: 5px; }
2254
- .mb { border-bottom: #dcdcdc 1px solid; }
2255
- .ctHeader { border-top: 1px solid; border-bottom: 1px solid; border-left: 1px solid; border-right: 1px solid; font-weight: bold; padding-left: 10px; }
2256
- .ctciItem { background: #ffffff; border-left: #dcdcdc 1px solid; border-right: #dcdcdc 1px solid; padding-right: 10px; font-size: 10px; }
2257
- .etcItem { background: #ffffff; border-left: #dcdcdc 1px solid; border-right: #dcdcdc 1px solid; padding-left: 10px; padding-right: 10px; }
2258
- .projectTable { background: #a9d9f7; border-color: #649cc0; }
2259
- .primaryTable { background: #d7eefd; border-color: #a4dafc; }
2260
- .secondaryTable { background: #f9e9b7; border-color: #f6d376; }
2261
- .secondaryChildTable { background: #fff6df; border-color: #f5e1b1; }
2262
- .exclusionTable { background: #e1e1e1; border-color: #c0c0c0; }
2263
- .exclusionCell { background: #f7f7f7; }
2264
- .up { color: #008000; }
2265
- .dn { color: #c80000; }
2266
- #tooltip {
2267
- position: absolute;
2268
- z-index: 3000;
2269
- border: 1px solid #111;
2270
- background-color: #eee;
2271
- padding: 5px;
2272
- opacity: 0.85;
2273
- }
2274
- #tooltip h3, #tooltip div { margin: 0; }
2275
- </xsl:text>
2276
- </style>
2277
- <xsl:if test="$isTrendReport">
2278
- <script src="{baseimagepath}jquery-1.3.2.min.js" type="text/javascript"></script>
2279
- <script src="{baseimagepath}trends.js" type="text/javascript"></script>
2280
-
2281
- <script type="text/javascript">
2282
- <xsl:text disable-output-escaping="yes" xml:space="preserve">
2283
- <![CDATA[$(function(){
2284
-
2285
- $('.trGr').each(function(){
2286
- var t = $(this);
2287
- t.sparkline(t.attr('data').split(','),
2288
- {
2289
- minSpotColor : '#000000',
2290
- maxSpotColor : '#000000',
2291
- marginBottom: '0px',
2292
- height:30,
2293
- width: '100%',
2294
- lineColor: '#000000',
2295
- spotColor:'#0000ff',
2296
- barColor:'#ffffff',
2297
- fillColor: null,
2298
- normalRangeColor: '#00cd00',
2299
- normalRangeMin: t.attr('min'),
2300
- normalRangeMax: 100,
2301
- chartRangeMin: -1,
2302
- chartRangeMax: 100
2303
- }
2304
- );
2305
- });
2306
- });]]>
2307
- </xsl:text>
2308
- </script>
2309
-
2310
- </xsl:if>
2311
- </xsl:template>
2312
-
2313
- </xsl:stylesheet>