├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ └── bug_report.md ├── dependabot.yml └── workflows │ ├── ci.yml │ ├── codeql.yml │ └── depsreview.yml ├── CODE_OF_CONDUCT.md ├── LICENSE.txt ├── README.md ├── docs ├── 404.html ├── CNAME ├── contact.html ├── enterprise.html ├── favicon.ico ├── features.html ├── getstarted.html ├── index.html ├── main-NKVZYJN2.js ├── media │ ├── fa-brands-400-D7ILJVZN.ttf │ ├── fa-brands-400-LVJDN62F.woff2 │ ├── fa-regular-400-MSZXGDVO.woff2 │ ├── fa-regular-400-SWUKRL5F.ttf │ ├── fa-solid-900-6AQDZ7HZ.ttf │ ├── fa-solid-900-MEK224IN.woff2 │ ├── fa-v4compatibility-4EBDKFJT.ttf │ ├── fa-v4compatibility-Y4OS5Y3J.woff2 │ ├── open-sans-v27-latin-300-3K33CZTH.eot │ ├── open-sans-v27-latin-300-GN2OJ7PN.woff │ ├── open-sans-v27-latin-300-JO4FCBWF.ttf │ ├── open-sans-v27-latin-300-SGSQWT4E.woff2 │ ├── open-sans-v27-latin-300-SXTIAN3M.svg │ ├── open-sans-v27-latin-700-3746WH43.woff2 │ ├── open-sans-v27-latin-700-E52NVK65.svg │ ├── open-sans-v27-latin-700-GFFV5PH2.woff │ ├── open-sans-v27-latin-700-H7XDDMOV.ttf │ ├── open-sans-v27-latin-700-KVRNQACR.eot │ ├── open-sans-v27-latin-regular-GK7QWCTL.svg │ ├── open-sans-v27-latin-regular-IWTNICQR.woff2 │ ├── open-sans-v27-latin-regular-MZHZAVIX.ttf │ ├── open-sans-v27-latin-regular-NOTFULT5.eot │ └── open-sans-v27-latin-regular-OST77QDO.woff ├── polyfills-EONH2QZO.js ├── pro.html ├── resources │ ├── CustomExtensions.zip │ ├── CustomExtensions_v4.zip │ ├── SampleReports.zip │ ├── VSTS │ │ ├── 01_Bat.png │ │ ├── 02_Test_Results.png │ │ ├── 03_Publish_Code_Coverage.png │ │ ├── 04_Build_Result.png │ │ ├── Build_Order.png │ │ └── VSTS_CoverageSample.zip │ ├── badge.svg │ ├── enterprise.svg │ ├── enterprise │ │ ├── confirmation@2x.webp │ │ ├── email@2x.webp │ │ ├── invoice.pdf │ │ └── invoice@2x.webp │ ├── features │ │ ├── details@1x.webp │ │ ├── details@2x.webp │ │ ├── history@1x.webp │ │ ├── history@2x.webp │ │ ├── metrics_details@1x.webp │ │ ├── metrics_details@2x.webp │ │ ├── metrics_summary@1x.webp │ │ ├── metrics_summary@2x.webp │ │ ├── quota@1x.webp │ │ ├── quota@2x.webp │ │ ├── riskhotspots@1x.webp │ │ ├── riskhotspots@2x.webp │ │ ├── summary@1x.webp │ │ └── summary@2x.webp │ ├── individual.svg │ ├── input_output.png │ ├── logo.png │ ├── logo.svg │ ├── logo_512.png │ ├── logo_cli_512.png │ ├── logo_global_512.png │ ├── logo_plugin_512.png │ ├── metrics.png │ ├── portrait_600.jpg │ ├── reports │ │ ├── Badges │ │ │ ├── badge_branchcoverage.svg │ │ │ ├── badge_combined.svg │ │ │ ├── badge_fullmethodcoverage.svg │ │ │ ├── badge_linecoverage.svg │ │ │ ├── badge_methodcoverage.svg │ │ │ ├── badge_shieldsio_branchcoverage_blue.svg │ │ │ ├── badge_shieldsio_branchcoverage_brightgreen.svg │ │ │ ├── badge_shieldsio_branchcoverage_green.svg │ │ │ ├── badge_shieldsio_branchcoverage_lightgrey.svg │ │ │ ├── badge_shieldsio_branchcoverage_orange.svg │ │ │ ├── badge_shieldsio_branchcoverage_red.svg │ │ │ ├── badge_shieldsio_branchcoverage_yellow.svg │ │ │ ├── badge_shieldsio_branchcoverage_yellowgreen.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_blue.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_brightgreen.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_green.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_lightgrey.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_orange.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_red.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_yellow.svg │ │ │ ├── badge_shieldsio_fullmethodcoverage_yellowgreen.svg │ │ │ ├── badge_shieldsio_linecoverage_blue.svg │ │ │ ├── badge_shieldsio_linecoverage_brightgreen.svg │ │ │ ├── badge_shieldsio_linecoverage_green.svg │ │ │ ├── badge_shieldsio_linecoverage_lightgrey.svg │ │ │ ├── badge_shieldsio_linecoverage_orange.svg │ │ │ ├── badge_shieldsio_linecoverage_red.svg │ │ │ ├── badge_shieldsio_linecoverage_yellow.svg │ │ │ ├── badge_shieldsio_linecoverage_yellowgreen.svg │ │ │ ├── badge_shieldsio_methodcoverage_blue.svg │ │ │ ├── badge_shieldsio_methodcoverage_brightgreen.svg │ │ │ ├── badge_shieldsio_methodcoverage_green.svg │ │ │ ├── badge_shieldsio_methodcoverage_lightgrey.svg │ │ │ ├── badge_shieldsio_methodcoverage_orange.svg │ │ │ ├── badge_shieldsio_methodcoverage_red.svg │ │ │ ├── badge_shieldsio_methodcoverage_yellow.svg │ │ │ ├── badge_shieldsio_methodcoverage_yellowgreen.svg │ │ │ └── index.html │ │ ├── Clover │ │ │ └── Clover.xml │ │ ├── Cobertura │ │ │ └── Cobertura.xml │ │ ├── CodeClimate │ │ │ └── codeclimate.json │ │ ├── CsvSummary │ │ │ └── Summary.csv │ │ ├── Html │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ ├── class.js │ │ │ ├── icon_cog.svg │ │ │ ├── icon_cog_dark.svg │ │ │ ├── icon_cube.svg │ │ │ ├── icon_cube_dark.svg │ │ │ ├── icon_down-dir_active.svg │ │ │ ├── icon_down-dir_active_dark.svg │ │ │ ├── icon_fork.svg │ │ │ ├── icon_fork_dark.svg │ │ │ ├── icon_info-circled.svg │ │ │ ├── icon_info-circled_dark.svg │ │ │ ├── icon_minus.svg │ │ │ ├── icon_minus_dark.svg │ │ │ ├── icon_plus.svg │ │ │ ├── icon_plus_dark.svg │ │ │ ├── icon_search-minus.svg │ │ │ ├── icon_search-minus_dark.svg │ │ │ ├── icon_search-plus.svg │ │ │ ├── icon_search-plus_dark.svg │ │ │ ├── icon_sponsor.svg │ │ │ ├── icon_star.svg │ │ │ ├── icon_star_dark.svg │ │ │ ├── icon_up-dir.svg │ │ │ ├── icon_up-dir_active.svg │ │ │ ├── icon_up-down-dir.svg │ │ │ ├── icon_up-down-dir_dark.svg │ │ │ ├── icon_wrench.svg │ │ │ ├── icon_wrench_dark.svg │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── report.css │ │ ├── HtmlChart │ │ │ ├── CoverageHistory.htm │ │ │ └── CoverageHistory.html │ │ ├── HtmlInline │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ └── index.html │ │ ├── HtmlInline_AzurePipelines │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ └── index.html │ │ ├── HtmlInline_AzurePipelines_Dark │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ └── index.html │ │ ├── HtmlInline_AzurePipelines_Light │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ └── index.html │ │ ├── HtmlSummary │ │ │ └── summary.html │ │ ├── Html_BlueRed │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ ├── class.js │ │ │ ├── icon_cog.svg │ │ │ ├── icon_cog_dark.svg │ │ │ ├── icon_cube.svg │ │ │ ├── icon_cube_dark.svg │ │ │ ├── icon_down-dir_active.svg │ │ │ ├── icon_down-dir_active_dark.svg │ │ │ ├── icon_fork.svg │ │ │ ├── icon_fork_dark.svg │ │ │ ├── icon_info-circled.svg │ │ │ ├── icon_info-circled_dark.svg │ │ │ ├── icon_minus.svg │ │ │ ├── icon_minus_dark.svg │ │ │ ├── icon_plus.svg │ │ │ ├── icon_plus_dark.svg │ │ │ ├── icon_search-minus.svg │ │ │ ├── icon_search-minus_dark.svg │ │ │ ├── icon_search-plus.svg │ │ │ ├── icon_search-plus_dark.svg │ │ │ ├── icon_sponsor.svg │ │ │ ├── icon_star.svg │ │ │ ├── icon_star_dark.svg │ │ │ ├── icon_up-dir.svg │ │ │ ├── icon_up-dir_active.svg │ │ │ ├── icon_up-down-dir.svg │ │ │ ├── icon_up-down-dir_dark.svg │ │ │ ├── icon_wrench.svg │ │ │ ├── icon_wrench_dark.svg │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── report.css │ │ ├── Html_BlueRed_Summary │ │ │ └── summary.html │ │ ├── Html_Dark │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ ├── class.js │ │ │ ├── icon_cog.svg │ │ │ ├── icon_cog_dark.svg │ │ │ ├── icon_cube.svg │ │ │ ├── icon_cube_dark.svg │ │ │ ├── icon_down-dir_active.svg │ │ │ ├── icon_down-dir_active_dark.svg │ │ │ ├── icon_fork.svg │ │ │ ├── icon_fork_dark.svg │ │ │ ├── icon_info-circled.svg │ │ │ ├── icon_info-circled_dark.svg │ │ │ ├── icon_minus.svg │ │ │ ├── icon_minus_dark.svg │ │ │ ├── icon_plus.svg │ │ │ ├── icon_plus_dark.svg │ │ │ ├── icon_search-minus.svg │ │ │ ├── icon_search-minus_dark.svg │ │ │ ├── icon_search-plus.svg │ │ │ ├── icon_search-plus_dark.svg │ │ │ ├── icon_sponsor.svg │ │ │ ├── icon_star.svg │ │ │ ├── icon_star_dark.svg │ │ │ ├── icon_up-dir.svg │ │ │ ├── icon_up-dir_active.svg │ │ │ ├── icon_up-down-dir.svg │ │ │ ├── icon_up-down-dir_dark.svg │ │ │ ├── icon_wrench.svg │ │ │ ├── icon_wrench_dark.svg │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── report.css │ │ ├── Html_Light │ │ │ ├── Sample_PartialClass.html │ │ │ ├── Sample_Program.html │ │ │ ├── Sample_TestClass.html │ │ │ ├── Sample_TestClass2.html │ │ │ ├── class.js │ │ │ ├── icon_cog.svg │ │ │ ├── icon_cube.svg │ │ │ ├── icon_down-dir_active.svg │ │ │ ├── icon_fork.svg │ │ │ ├── icon_info-circled.svg │ │ │ ├── icon_minus.svg │ │ │ ├── icon_plus.svg │ │ │ ├── icon_search-minus.svg │ │ │ ├── icon_search-plus.svg │ │ │ ├── icon_sponsor.svg │ │ │ ├── icon_star.svg │ │ │ ├── icon_up-dir.svg │ │ │ ├── icon_up-dir_active.svg │ │ │ ├── icon_up-down-dir.svg │ │ │ ├── icon_wrench.svg │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── report.css │ │ ├── JsonSummary │ │ │ └── Summary.json │ │ ├── Latex │ │ │ └── Summary.tex │ │ ├── LatexSummary │ │ │ └── Summary.tex │ │ ├── MHtml │ │ │ └── Summary.mht │ │ ├── MarkdownAssembliesSummary │ │ │ └── Summary.md │ │ ├── MarkdownDeltaSummary │ │ │ └── DeltaSummary.md │ │ ├── MarkdownSummary │ │ │ └── Summary.md │ │ ├── MarkdownSummaryGithub │ │ │ └── SummaryGithub.md │ │ ├── OpenCover │ │ │ └── OpenCover.xml │ │ ├── SonarQube │ │ │ └── SonarQube.xml │ │ ├── SvgChart │ │ │ └── CoverageHistory.svg │ │ ├── TextDeltaSummary │ │ │ └── DeltaSummary.txt │ │ ├── TextSummary │ │ │ └── Summary.txt │ │ ├── Xml │ │ │ ├── Sample_PartialClass.xml │ │ │ ├── Sample_Program.xml │ │ │ ├── Sample_TestClass.xml │ │ │ ├── Sample_TestClass2.xml │ │ │ └── Summary.xml │ │ ├── XmlSummary │ │ │ └── Summary.xml │ │ ├── index.html │ │ └── lcov │ │ │ └── lcov.info │ ├── screenshot1.png │ ├── screenshot1.webp │ ├── screenshot1@2x.webp │ ├── screenshot1_dark.png │ ├── screenshot1_dark.webp │ ├── screenshot1_dark@2x.webp │ ├── screenshot2.png │ ├── screenshot2.webp │ ├── screenshot2@2x.webp │ ├── screenshot2_dark.png │ ├── screenshot2_dark.webp │ ├── screenshot2_dark@2x.webp │ ├── team.svg │ ├── trial.svg │ ├── twitter_light.webp │ └── unlimited.svg ├── robots.txt ├── scripts-EEEIPNC3.js ├── sitemap.xml ├── styles-GXQS5ZM2.css └── usage.html ├── global.json └── src ├── .editorconfig ├── .gitignore ├── AngularComponents ├── .gitignore ├── README.md ├── angular.json ├── package-lock.json ├── package.json ├── src │ ├── app │ │ ├── app.module.ts │ │ ├── components │ │ │ ├── coverageinfo │ │ │ │ ├── class-row.component.ts │ │ │ │ ├── codeelement-row.component.ts │ │ │ │ ├── coverage-bar.component.ts │ │ │ │ ├── coverage-history-chart.component.ts │ │ │ │ ├── coverage-info.component.ts │ │ │ │ ├── data │ │ │ │ │ ├── assembly.class.ts │ │ │ │ │ ├── class.class.ts │ │ │ │ │ ├── coverageinfo-settings.class.ts │ │ │ │ │ ├── historic-coverage.class.ts │ │ │ │ │ └── metric.class.ts │ │ │ │ ├── popup.component.ts │ │ │ │ ├── pro-button.component.ts │ │ │ │ └── viewmodels │ │ │ │ │ ├── class-viewmodel.class.ts │ │ │ │ │ ├── codelement-viewmodel.class.ts │ │ │ │ │ ├── elementbase.class.ts │ │ │ │ │ └── helper.class.ts │ │ │ ├── globalhistorystate.ts │ │ │ └── riskhotspots │ │ │ │ ├── data │ │ │ │ ├── metric.class.ts │ │ │ │ ├── riskhotspot-metric.class.ts │ │ │ │ ├── riskhotspot.class.ts │ │ │ │ └── riskhotspots-settings.class.ts │ │ │ │ └── riskhotspots.component.ts │ │ └── infrastructure │ │ │ └── windowref.service.ts │ ├── assets │ │ ├── .gitkeep │ │ ├── icon_cog.svg │ │ ├── icon_cog_dark.svg │ │ ├── icon_down-dir_active.svg │ │ ├── icon_info-circled.svg │ │ ├── icon_minus.svg │ │ ├── icon_plus.svg │ │ ├── icon_up-dir.svg │ │ ├── icon_up-dir_active.svg │ │ └── report.css │ ├── class.htm │ ├── environments │ │ ├── environment.prod.ts │ │ └── environment.ts │ ├── favicon.ico │ ├── index.html │ ├── main.ts │ ├── polyfills.ts │ └── styles.css ├── tsconfig.app.json └── tsconfig.json ├── AzureDevopsTask ├── README.md ├── ReportGenerator │ ├── icon.png │ ├── package-lock.json │ ├── package.json │ ├── reportgenerator.ts │ ├── task.json │ └── tsconfig.json ├── build.bat ├── icon.png ├── img │ ├── screenshot1.png │ └── screenshot2.png ├── package-lock.json ├── package.json └── vss-extension.json ├── AzureDevopsTaskTest ├── README.md ├── ReportGenerator │ ├── icon.png │ ├── package-lock.json │ ├── package.json │ ├── reportgenerator.ts │ ├── task.json │ └── tsconfig.json ├── build.bat ├── icon.png ├── img │ ├── screenshot1.png │ └── screenshot2.png ├── package-lock.json ├── package.json └── vss-extension.json ├── Deployment ├── chocolatey │ ├── VERIFICATION.txt │ └── reportgenerator.portable.nuspec ├── logo_64.png ├── logo_global_64.png ├── logo_plugin_64.png └── nuget │ ├── DotnetToolSettings.xml │ ├── Readme_ReportGenerator.Core.md │ ├── Readme_ReportGenerator.Core.txt │ ├── Readme_ReportGenerator.md │ ├── Readme_dotnet-reportgenerator-globaltool.md │ ├── ReportGenerator.Core.nuspec │ ├── ReportGenerator.nuspec │ ├── ReportGenerator.props │ └── dotnet-reportgenerator-globaltool.nuspec ├── Directory.Build.props ├── Readme.txt ├── ReportGenerator.Console.NetCore ├── Program.cs ├── ProgramIcon.ico ├── Properties │ └── launchSettings.json ├── ReportGenerator.Console.NetCore.csproj └── runtimeconfig.template.json ├── ReportGenerator.Console ├── Program.cs ├── ProgramIcon.ico ├── Properties │ └── AssemblyInfo.cs ├── ReportGenerator.Console.Net.csproj └── app.config ├── ReportGenerator.Core.Test ├── Common │ ├── Encodings │ │ ├── ansii.txt │ │ ├── ascii.txt │ │ ├── latin1.txt │ │ ├── unicode_uft16_be.txt │ │ ├── unicode_uft16_le.txt │ │ ├── utf8.txt │ │ └── utf8_bom.txt │ ├── EnumerableExtensionsTest.cs │ ├── FileHelperTest.cs │ ├── GlobbingFileSearchTest.cs │ ├── MathExtensionsTest.cs │ ├── StringExtensionsTest.cs │ └── WildCardFileSearchTest.cs ├── FileManager.cs ├── Issues │ └── Issue235_Cobertura.cs ├── LimitedVerbosityFixture.cs ├── MsBuildTest.cs ├── MsBuildTestScript.proj ├── MsBuildTestScript_NetCore.proj ├── Parser │ ├── Analysis │ │ ├── AssemblyTest.cs │ │ ├── BranchTest.cs │ │ ├── ClassTest.cs │ │ ├── CodeFileTest.cs │ │ └── MethodMetricTest.cs │ ├── ClassNameParserTest.cs │ ├── CloverParserTest.cs │ ├── CoberturaParserTest.cs │ ├── CoverageReportParserTest.cs │ ├── DotCoverParserTest.cs │ ├── DynamicCodeCoverageParserTest.cs │ ├── FileReading │ │ ├── AltCoverEmbeddedFileReaderTest.cs │ │ └── LocalFileReaderTest.cs │ ├── Filtering │ │ └── DefaultFilterTest.cs │ ├── GCovParserTest.cs │ ├── JaCoCoParserTest.cs │ ├── LCovParserTest.cs │ ├── MProfParserTest.cs │ ├── NCoverParserTest.cs │ ├── OpenCoverParserTest.cs │ ├── ParserResultTest.cs │ ├── Preprocessing │ │ ├── CoberturaReportPreprocessorTest.cs │ │ ├── DotCoverReportPreprocessorTest.cs │ │ ├── DynamicCodeCoverageReportPreprocessorTest.cs │ │ ├── JaCoCoReportPreprocessorTest.cs │ │ ├── OpenCoverReportPreprocessorTest.cs │ │ └── VisualStudioReportPreprocessorTest.cs │ ├── VisualStudioParserTest_2010.cs │ ├── VisualStudioParserTest_2012.cs │ └── VisualStudioParserTest_2013.cs ├── ProgramTest.cs ├── ReportConfigurationBuilderTest.cs ├── ReportConfigurationTest.cs ├── ReportConfigurationValidatorTest.cs ├── ReportGenerator.Core.Test.csproj ├── Reporting │ └── ReportBuilderFactoryTest.cs └── Settings.StyleCop ├── ReportGenerator.Core ├── CodeAnalysis │ ├── IRiskHotspotsAnalyzer.cs │ ├── MetricStatus.cs │ ├── RiskHotspot.cs │ ├── RiskHotspotAnalysisResult.cs │ ├── RiskHotspotsAnalysisThresholds.cs │ └── RiskHotspotsAnalyzer.cs ├── CommandLineArgumentNames.cs ├── Common │ ├── EnumerableExtensions.cs │ ├── ExceptionExtensions.cs │ ├── FileHelper.cs │ ├── Glob.cs │ ├── GlobbingFileSearch.cs │ ├── LinqExtensions.cs │ ├── MathExtensions.cs │ ├── StringExtensions.cs │ └── WildCardFileSearch.cs ├── DotNetConfigSettingNames.cs ├── Generator.cs ├── Help.cs ├── IReportGenerator.cs ├── Licensing │ ├── License.cs │ ├── LicenseType.cs │ ├── LicenseValidator.cs │ └── LicenseWrapper.cs ├── Logging │ ├── ConsoleLogger.cs │ ├── ConsoleLoggerFactory.cs │ ├── DelegateLogger.cs │ ├── DelegateLoggerFactory.cs │ ├── ILogger.cs │ ├── ILoggerFactory.cs │ ├── LoggerFactory.cs │ └── VerbosityLevel.cs ├── LowCoverageException.cs ├── MaxiumRiskhotspotsThresholdsValidator.cs ├── MinimumCoverageThresholds.cs ├── MinimumCoverageThresholdsValidator.cs ├── Parser │ ├── Analysis │ │ ├── Assembly.cs │ │ ├── Branch.cs │ │ ├── Class.cs │ │ ├── CodeElement.cs │ │ ├── CodeElementType.cs │ │ ├── CodeFile.cs │ │ ├── CoverageByTrackedMethod.cs │ │ ├── FileAnalysis.cs │ │ ├── FlagsLineVisitStatus.cs │ │ ├── HistoricCoverage.cs │ │ ├── HistoricCoverages.cs │ │ ├── LineAnalysis.cs │ │ ├── LineVisitStatus.cs │ │ ├── MethodMetric.cs │ │ ├── Metric.cs │ │ ├── MetricMergeOrder.cs │ │ ├── MetricType.cs │ │ ├── ShortLineAnalysis.cs │ │ ├── SummaryResult.cs │ │ └── TestMethod.cs │ ├── ClassNameParser.cs │ ├── ClassNameParserResult.cs │ ├── CloverParser.cs │ ├── CoberturaParser.cs │ ├── CodeElementBase.cs │ ├── CoverageReportParser.cs │ ├── DotCoverParser.cs │ ├── DynamicCodeCoverageParser.cs │ ├── FileReading │ │ ├── AltCoverEmbeddedFileReader.cs │ │ ├── CachingFileReader.cs │ │ ├── IFileReader.cs │ │ └── LocalFileReader.cs │ ├── Filtering │ │ ├── DefaultFilter.cs │ │ └── IFilter.cs │ ├── GCovParser.cs │ ├── JaCoCoParser.cs │ ├── LCovParser.cs │ ├── MProfParser.cs │ ├── NCoverParser.cs │ ├── OpenCoverParser.cs │ ├── ParserBase.cs │ ├── ParserResult.cs │ ├── Preprocessing │ │ ├── CloverReportPreprocessor.cs │ │ ├── CoberturaReportPreprocessor.cs │ │ ├── DotCoverReportPreprocessor.cs │ │ ├── DynamicCodeCoverageReportPreprocessor.cs │ │ ├── GCovReportPreprocessor..cs │ │ ├── JaCoCoReportPreprocessor.cs │ │ ├── OpenCoverReportPreprocessor.cs │ │ └── VisualStudioReportPreprocessor.cs │ ├── UnsupportedParserException.cs │ └── VisualStudioParser.cs ├── Plugin │ ├── DefaultAssemblyLoader.cs │ ├── FileUnblocker.cs │ ├── IAssemblyLoader.cs │ ├── IPluginLoader.cs │ ├── ReflectionPluginLoader.cs │ └── ReflectionWrapperAssemblyLoader.cs ├── Program.cs ├── ProgramIcon.ico ├── Properties │ ├── AssemblyInfo.cs │ ├── Help.Designer.cs │ ├── Help.resx │ ├── ReportResources.Designer.cs │ ├── ReportResources.resx │ ├── Resources.Designer.cs │ └── Resources.resx ├── ReportConfiguration.cs ├── ReportConfigurationBuilder.cs ├── ReportConfigurationValidator.cs ├── ReportContext.cs ├── ReportGenerator.Core.csproj ├── Reporting │ ├── Builders │ │ ├── BadgeReportBuilder.cs │ │ ├── CloverReportBuilder.cs │ │ ├── CoberturaReportBuilder.cs │ │ ├── CodeClimateReportBuilder.cs │ │ ├── CsvSummaryReportBuilder.cs │ │ ├── HtmlBlueRedReportBuilder.cs │ │ ├── HtmlBlueRedSummaryReportBuilder.cs │ │ ├── HtmlChartReportBuilder.cs │ │ ├── HtmlDarkReportBuilder.cs │ │ ├── HtmlInlineAzurePipelinesDarkReportBuilder.cs │ │ ├── HtmlInlineAzurePipelinesLightReportBuilder.cs │ │ ├── HtmlInlineAzurePipelinesReportBuilder.cs │ │ ├── HtmlInlineCssAndJavaScriptReportBuilder.cs │ │ ├── HtmlLightReportBuilder.cs │ │ ├── HtmlReportBuilder.cs │ │ ├── HtmlReportBuilderBase.cs │ │ ├── HtmlSummaryReportBuilder.cs │ │ ├── JsonSummaryReportBuilder.cs │ │ ├── LCovSummaryReportBuilder.cs │ │ ├── LatexReportBuilder.cs │ │ ├── LatexReportBuilderBase.cs │ │ ├── LatexSummaryReportBuilder.cs │ │ ├── MarkdownAssembliesSummaryReportBuilder.cs │ │ ├── MarkdownDeltaSummaryReportBuilder.cs │ │ ├── MarkdownSummaryGithubReportBuilder.cs │ │ ├── MarkdownSummaryReportBuilder.cs │ │ ├── MhtmlReportBuilder.cs │ │ ├── OpenCoverReportBuilder.cs │ │ ├── PngChartReportBuilder.cs │ │ ├── Rendering │ │ │ ├── Card.cs │ │ │ ├── CardLineItem.cs │ │ │ ├── CardLineItemAlignment.cs │ │ │ ├── HtmlMode.cs │ │ │ ├── HtmlRenderer.cs │ │ │ ├── IHtmlRenderer.cs │ │ │ ├── ILatexRenderer.cs │ │ │ ├── LatexRenderer.cs │ │ │ ├── StringHelper.cs │ │ │ ├── SvgHistoryChartRenderer.cs │ │ │ └── resources │ │ │ │ ├── chartist.js │ │ │ │ ├── chartist.min.css │ │ │ │ ├── chartist.min.js │ │ │ │ ├── custom-azurepipelines.css │ │ │ │ ├── custom-azurepipelines_adaptive.css │ │ │ │ ├── custom-azurepipelines_dark.css │ │ │ │ ├── custom.css │ │ │ │ ├── custom.js │ │ │ │ ├── custom_adaptive.css │ │ │ │ ├── custom_bluered.css │ │ │ │ ├── custom_dark.css │ │ │ │ ├── main.js │ │ │ │ ├── polyfills.js │ │ │ │ └── runtime.js │ │ ├── SonarQubeBuilder.cs │ │ ├── SvgChartReportBuilder.cs │ │ ├── TeamCitySummaryReportBuilder.cs │ │ ├── TextDeltaSummaryReportBuilder.cs │ │ ├── TextSummaryReportBuilder.cs │ │ ├── XmlReportBuilder.cs │ │ └── XmlSummaryReportBuilder.cs │ ├── GitHelper.cs │ ├── GitInformation.cs │ ├── History │ │ ├── FileHistoryStorage.cs │ │ ├── HistoryParser.cs │ │ ├── HistoryReportGenerator.cs │ │ ├── HistoryStorageFactory.cs │ │ └── IHistoryStorage.cs │ ├── IReportBuilder.cs │ ├── IReportBuilderFactory.cs │ ├── IReportConfiguration.cs │ ├── IReportContext.cs │ ├── ReportBuilderFactory.cs │ └── ReportGenerator.cs ├── RiskhotspotThresholdException.cs ├── Settings.cs ├── appsettings.json └── stylecop.ruleset ├── ReportGenerator.DotnetCorePluginLoader ├── DotnetCoreAssemblyLoader.cs └── ReportGenerator.DotnetCorePluginLoader.csproj ├── ReportGenerator.DotnetGlobalTool ├── Program.cs ├── ProgramIcon.ico ├── ReportGenerator.DotnetGlobalTool.csproj └── runtimeconfig.template.json ├── ReportGenerator.MSBuild ├── AssemblyResolver.cs ├── ReportGenerator.MSBuild.csproj └── ReportGenerator.cs ├── ReportGenerator.sln ├── ReportGenerator.snk ├── Testprojects ├── C++ │ ├── Projects │ │ ├── build.sh │ │ ├── main.cpp │ │ └── sub │ │ │ └── calculator.cpp │ └── Reports │ │ ├── Cobertura_CPPCoverage.xml │ │ ├── gcov │ │ ├── basic │ │ │ ├── calculator.cpp.gcov │ │ │ └── main.cpp.gcov │ │ ├── branch_counts │ │ │ ├── calculator.cpp.gcov │ │ │ └── main.cpp.gcov │ │ ├── branch_probabilities │ │ │ ├── calculator.cpp.gcov │ │ │ └── main.cpp.gcov │ │ └── branch_unconditional │ │ │ ├── calculator.cpp.gcov │ │ │ └── main.cpp.gcov │ │ └── lcov.info ├── CSharp │ ├── Project │ │ ├── AbstractClass.cs │ │ ├── AnalyzerTestClass.cs │ │ ├── AsyncClass.cs │ │ ├── ClassWithExcludes.cs │ │ ├── CodeContract_Contract.cs │ │ ├── CodeContract_Interface.cs │ │ ├── CodeContract_Target.cs │ │ ├── CoverageExcludeAttribute.cs │ │ ├── GenericClass.cs │ │ ├── NotMatchingFileName.cs │ │ ├── PartialClass.cs │ │ ├── PartialClass2.cs │ │ ├── PartialClassWithAutoProperties.cs │ │ ├── PartialClassWithAutoProperties2.cs │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── TestClass.cs │ │ ├── TestClass2.cs │ │ ├── Test_CSharp.csproj │ │ └── app.config │ ├── Project_DotNetCore │ │ ├── Test.sln │ │ ├── Test │ │ │ ├── AbstractClass.cs │ │ │ ├── AnalyzerTestClass.cs │ │ │ ├── AsyncClass.cs │ │ │ ├── ClassWithExcludes.cs │ │ │ ├── ClassWithLocalFunctions.cs │ │ │ ├── CodeContract_Contract.cs │ │ │ ├── CodeContract_Interface.cs │ │ │ ├── CodeContract_Target.cs │ │ │ ├── CoverageExcludeAttribute.cs │ │ │ ├── GenericAsyncClass.cs │ │ │ ├── GenericClass.cs │ │ │ ├── NotMatchingFileName.cs │ │ │ ├── PartialClass.cs │ │ │ ├── PartialClass2.cs │ │ │ ├── PartialClassWithAutoProperties.cs │ │ │ ├── PartialClassWithAutoProperties2.cs │ │ │ ├── Program.cs │ │ │ ├── Test.csproj │ │ │ ├── TestClass.cs │ │ │ └── TestClass2.cs │ │ └── UnitTests │ │ │ ├── UnitTest.cs │ │ │ └── UnitTests.csproj │ └── Reports │ │ ├── Cobertura_altcover.xml │ │ ├── Cobertura_coverlet.xml │ │ ├── Cobertura_dotnet-coverage.xml │ │ ├── Cobertura_dotnettest.xml │ │ ├── Cobertura_dotnettest_old.xml │ │ ├── DynamicCodeCoverage.xml │ │ ├── MultiDynamicCodeCoverage.xml │ │ ├── MultiNCover1.5.8.xml │ │ ├── MultiOpenCover.xml │ │ ├── MultiPartcover2.2.xml │ │ ├── MultiPartcover2.3.xml │ │ ├── MultiVisualStudio2010.coveragexml │ │ ├── MultidotCover.xml │ │ ├── NCover1.5.8.xml │ │ ├── OpenCover.xml │ │ ├── OpenCoverWithEmbeddedSource.xml │ │ ├── OpenCoverWithTrackedMethods.xml │ │ ├── OpenCover_altcover.xml │ │ ├── OpenCover_coverlet.xml │ │ ├── Partcover2.2.xml │ │ ├── Partcover2.3.0.35109.xml │ │ ├── Partcover2.3.xml │ │ ├── Partcover4.0.10620.xml │ │ ├── VisualStudio2010.coveragexml │ │ ├── VisualStudio2012.coveragexml │ │ ├── VisualStudio2013.coveragexml │ │ ├── VisualStudio2022.coveragexml │ │ ├── dotCover.xml │ │ ├── lcov.info │ │ └── mprof-report.xml ├── Clover.ps1 ├── Cobertura.ps1 ├── DynamicCodeCoverage.ps1 ├── FSharp │ ├── Project │ │ ├── Module1.fs │ │ ├── Program.fs │ │ └── Test_FSharp.fsproj │ └── Reports │ │ ├── DynamicCodeCoverage.xml │ │ ├── OpenCover.xml │ │ ├── VisualStudio2010.coveragexml │ │ ├── VisualStudio2013.coveragexml │ │ └── dotCover.xml ├── JaCoCo.ps1 ├── JaCoCo_Ant.xml ├── Java │ ├── Project │ │ └── test │ │ │ ├── AbstractClass.java │ │ │ ├── AbstractClass_SampleImpl1.java │ │ │ ├── AbstractClass_SampleImpl2.java │ │ │ ├── GenericClass.java │ │ │ ├── Program.java │ │ │ ├── TestClass.java │ │ │ └── sub │ │ │ └── Sub.java │ └── Reports │ │ ├── Clover_OpenClover4.3.1.xml │ │ ├── Cobertura2.1.1-MultiSource.xml │ │ ├── Cobertura2.1.1.xml │ │ ├── JaCoCo0.7.7.xml │ │ ├── JaCoCo0.8.3.xml │ │ ├── cobertura-1.9.2.xsd │ │ └── coverage-04.dtd ├── NCover1.5.8.bat ├── OpenCover.ps1 ├── Other │ ├── Clover_Groovy.xml │ ├── Clover_Istanbul.xml │ └── Cobertura_Istanbul.xml ├── PartCover2.2.bat ├── PartCover2.3.35109.bat ├── PartCover2.3.bat ├── PartCover4.0.10620.ps1 ├── altCover.ps1 ├── coverlet.ps1 ├── dotCover.ps1 ├── dotnet-coverage.ps1 └── dotnet-test.ps1 ├── build.bat ├── build.proj └── update-version.ps1 /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: danielpalme 2 | custom: https://paypal.me/danielpalme82 -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | The following input helps to reproduce your issue: 15 | 1. Console output of ReportGenerator 16 | 2. If the issue is related to a specific coverage file which gets parsed by ReportGenerator, you can share the file: 17 | - Publicly 18 | - By email: reportgenerator@palmmedia.de 19 | Small files can be send as an attachment. Large files should can be shared via Dropbox, Google Drive, Onedrive. 20 | Shared files are treated confidentially and will be deleted after the issue is resolved. 21 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | # Enable version updates for Github Actions 4 | - package-ecosystem: "github-actions" 5 | directory: "/" 6 | schedule: 7 | interval: "weekly" 8 | 9 | # Enable version updates for npm 10 | - package-ecosystem: "npm" 11 | # Look for `package.json` and `lock` files in the `root` directory 12 | directory: "src/AzureDevopsTask" 13 | # Check the npm registry for updates every day (weekdays) 14 | schedule: 15 | interval: "weekly" -------------------------------------------------------------------------------- /.github/workflows/depsreview.yml: -------------------------------------------------------------------------------- 1 | name: 'Dependency Review' 2 | on: [pull_request] 3 | 4 | permissions: 5 | contents: read 6 | 7 | jobs: 8 | dependency-review: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: 'Checkout Repository' 12 | uses: actions/checkout@v4 13 | - name: 'Dependency Review' 14 | uses: actions/dependency-review-action@v4 15 | -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | reportgenerator.io -------------------------------------------------------------------------------- /docs/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/favicon.ico -------------------------------------------------------------------------------- /docs/media/fa-brands-400-D7ILJVZN.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-brands-400-D7ILJVZN.ttf -------------------------------------------------------------------------------- /docs/media/fa-brands-400-LVJDN62F.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-brands-400-LVJDN62F.woff2 -------------------------------------------------------------------------------- /docs/media/fa-regular-400-MSZXGDVO.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-regular-400-MSZXGDVO.woff2 -------------------------------------------------------------------------------- /docs/media/fa-regular-400-SWUKRL5F.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-regular-400-SWUKRL5F.ttf -------------------------------------------------------------------------------- /docs/media/fa-solid-900-6AQDZ7HZ.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-solid-900-6AQDZ7HZ.ttf -------------------------------------------------------------------------------- /docs/media/fa-solid-900-MEK224IN.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-solid-900-MEK224IN.woff2 -------------------------------------------------------------------------------- /docs/media/fa-v4compatibility-4EBDKFJT.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-v4compatibility-4EBDKFJT.ttf -------------------------------------------------------------------------------- /docs/media/fa-v4compatibility-Y4OS5Y3J.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/fa-v4compatibility-Y4OS5Y3J.woff2 -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-300-3K33CZTH.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-300-3K33CZTH.eot -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-300-GN2OJ7PN.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-300-GN2OJ7PN.woff -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-300-JO4FCBWF.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-300-JO4FCBWF.ttf -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-300-SGSQWT4E.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-300-SGSQWT4E.woff2 -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-700-3746WH43.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-700-3746WH43.woff2 -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-700-GFFV5PH2.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-700-GFFV5PH2.woff -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-700-H7XDDMOV.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-700-H7XDDMOV.ttf -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-700-KVRNQACR.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-700-KVRNQACR.eot -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-regular-IWTNICQR.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-regular-IWTNICQR.woff2 -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-regular-MZHZAVIX.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-regular-MZHZAVIX.ttf -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-regular-NOTFULT5.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-regular-NOTFULT5.eot -------------------------------------------------------------------------------- /docs/media/open-sans-v27-latin-regular-OST77QDO.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/media/open-sans-v27-latin-regular-OST77QDO.woff -------------------------------------------------------------------------------- /docs/resources/CustomExtensions.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/CustomExtensions.zip -------------------------------------------------------------------------------- /docs/resources/CustomExtensions_v4.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/CustomExtensions_v4.zip -------------------------------------------------------------------------------- /docs/resources/SampleReports.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/SampleReports.zip -------------------------------------------------------------------------------- /docs/resources/VSTS/01_Bat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/VSTS/01_Bat.png -------------------------------------------------------------------------------- /docs/resources/VSTS/02_Test_Results.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/VSTS/02_Test_Results.png -------------------------------------------------------------------------------- /docs/resources/VSTS/03_Publish_Code_Coverage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/VSTS/03_Publish_Code_Coverage.png -------------------------------------------------------------------------------- /docs/resources/VSTS/04_Build_Result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/VSTS/04_Build_Result.png -------------------------------------------------------------------------------- /docs/resources/VSTS/Build_Order.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/VSTS/Build_Order.png -------------------------------------------------------------------------------- /docs/resources/VSTS/VSTS_CoverageSample.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/VSTS/VSTS_CoverageSample.zip -------------------------------------------------------------------------------- /docs/resources/enterprise/confirmation@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/enterprise/confirmation@2x.webp -------------------------------------------------------------------------------- /docs/resources/enterprise/email@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/enterprise/email@2x.webp -------------------------------------------------------------------------------- /docs/resources/enterprise/invoice.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/enterprise/invoice.pdf -------------------------------------------------------------------------------- /docs/resources/enterprise/invoice@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/enterprise/invoice@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/details@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/details@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/details@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/details@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/history@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/history@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/history@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/history@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/metrics_details@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/metrics_details@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/metrics_details@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/metrics_details@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/metrics_summary@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/metrics_summary@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/metrics_summary@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/metrics_summary@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/quota@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/quota@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/quota@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/quota@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/riskhotspots@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/riskhotspots@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/riskhotspots@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/riskhotspots@2x.webp -------------------------------------------------------------------------------- /docs/resources/features/summary@1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/summary@1x.webp -------------------------------------------------------------------------------- /docs/resources/features/summary@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/features/summary@2x.webp -------------------------------------------------------------------------------- /docs/resources/individual.svg: -------------------------------------------------------------------------------- 1 | 2 | 17 | -------------------------------------------------------------------------------- /docs/resources/input_output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/input_output.png -------------------------------------------------------------------------------- /docs/resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/logo.png -------------------------------------------------------------------------------- /docs/resources/logo_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/logo_512.png -------------------------------------------------------------------------------- /docs/resources/logo_cli_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/logo_cli_512.png -------------------------------------------------------------------------------- /docs/resources/logo_global_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/logo_global_512.png -------------------------------------------------------------------------------- /docs/resources/logo_plugin_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/logo_plugin_512.png -------------------------------------------------------------------------------- /docs/resources/metrics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/metrics.png -------------------------------------------------------------------------------- /docs/resources/portrait_600.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/portrait_600.jpg -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_blue.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_brightgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_green.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_lightgrey.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_orange.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_red.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_yellow.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_branchcoverage_yellowgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_blue.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_brightgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_green.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_lightgrey.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_orange.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_red.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_yellow.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_fullmethodcoverage_yellowgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_blue.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_brightgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_green.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_lightgrey.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_orange.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_red.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_yellow.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_linecoverage_yellowgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_blue.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_brightgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_green.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_lightgrey.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_orange.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_red.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_yellow.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Badges/badge_shieldsio_methodcoverage_yellowgreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/CsvSummary/Summary.csv: -------------------------------------------------------------------------------- 1 | Summary 2 | Generated on:;09.02.2025 - 18:57:00 3 | Parser:;OpenCover 4 | Assemblies:;1 5 | Classes:;4 6 | Files:;5 7 | Line coverage:;69.4% 8 | Covered lines:;75 9 | Uncovered lines:;33 10 | Coverable lines:;108 11 | Total lines:;260 12 | 13 | Sample;69.4% 14 | 15 | Sample.PartialClass;54.5% 16 | Test.Program;100% 17 | Test.TestClass;72.7% 18 | Test.TestClass2;63.1% 19 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_cube.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_cube_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_down-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_down-dir_active_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_fork.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_fork_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_info-circled.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_info-circled_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_minus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_plus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_search-minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_search-minus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_search-plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_search-plus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_sponsor.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_star.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_star_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_up-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_up-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_up-down-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_up-down-dir_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_wrench.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html/icon_wrench_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_cube.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_cube_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_down-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_down-dir_active_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_fork.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_fork_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_info-circled.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_info-circled_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_minus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_plus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_search-minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_search-minus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_search-plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_search-plus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_sponsor.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_star.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_star_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_up-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_up-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_up-down-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_up-down-dir_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_wrench.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_BlueRed/icon_wrench_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_cube.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_cube_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_down-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_down-dir_active_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_fork.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_fork_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_info-circled.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_info-circled_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_minus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_plus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_search-minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_search-minus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_search-plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_search-plus_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_sponsor.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_star.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_star_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_up-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_up-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_up-down-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_up-down-dir_dark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_wrench.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Dark/icon_wrench_dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_cube.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_down-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_fork.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_info-circled.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_search-minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_search-plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_sponsor.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_star.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_up-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_up-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_up-down-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/Html_Light/icon_wrench.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/resources/reports/MarkdownAssembliesSummary/Summary.md: -------------------------------------------------------------------------------- 1 | # Summary 2 | 3 |     4 | 5 | |**Assembly**|**Line coverage**|**Branch coverage**|**Method coverage**|**Full method coverage**| 6 | |:---|---:|---:|---:|---:| 7 | |**Sample**|**69.4%**|**50%**|**66.6%**|**37.5%**| 8 | -------------------------------------------------------------------------------- /docs/resources/reports/MarkdownDeltaSummary/DeltaSummary.md: -------------------------------------------------------------------------------- 1 | # Delta Summary 2 | ||||| 3 | |:---|---:|---:|---:| 4 | | Generated on: | 09.02.2025 - 18:57 | | | 5 | | Description | **Previous** | **Current** | **Delta** | 6 | | Coverage date: | 09.02.2022 - 20:50 | 09.02.2025 - 18:57 | | 7 | | **Line coverage:** | 58.4% | 69.4% | 11.0% | 8 | | Covered lines: | 73 | 75 | 2 | 9 | | Coverable lines: | 125 | 108 | -17 | 10 | | Total lines: | 260 | 260 | 0 | 11 | | **Branch coverage:** | 45% | 50% | 5% | 12 | | Covered branches: | 27 | 4 | -23 | 13 | | Total branches: | 60 | 8 | -52 | 14 | | **Method coverage:** | 66.6% | 66.6% | 0.0% | 15 | | **Full method coverage:** | 37.5% | 37.5% | 0.0% | 16 | | Covered methods: | 16 | 16 | 0 | 17 | | Fully covered methods: | 9 | 9 | 0 | 18 | | Total methods: | 24 | 24 | 0 | 19 | -------------------------------------------------------------------------------- /docs/resources/reports/TextSummary/Summary.txt: -------------------------------------------------------------------------------- 1 | Summary 2 | Generated on: 09.02.2025 - 18:56:59 3 | Parser: OpenCover 4 | Assemblies: 1 5 | Classes: 4 6 | Files: 5 7 | Line coverage: 69.4% 8 | Covered lines: 75 9 | Uncovered lines: 33 10 | Coverable lines: 108 11 | Total lines: 260 12 | Branch coverage: 50% (4 of 8) 13 | Covered branches: 4 14 | Total branches: 8 15 | Method coverage: 66.6% (16 of 24) 16 | Full method coverage: 37.5% (9 of 24) 17 | Covered methods: 16 18 | Fully covered methods: 9 19 | Total methods: 24 20 | 21 | Sample 69.4% 22 | Sample.PartialClass 54.5% 23 | Test.Program 100% 24 | Test.TestClass 72.7% 25 | Test.TestClass2 63.1% 26 | -------------------------------------------------------------------------------- /docs/resources/screenshot1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot1.png -------------------------------------------------------------------------------- /docs/resources/screenshot1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot1.webp -------------------------------------------------------------------------------- /docs/resources/screenshot1@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot1@2x.webp -------------------------------------------------------------------------------- /docs/resources/screenshot1_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot1_dark.png -------------------------------------------------------------------------------- /docs/resources/screenshot1_dark.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot1_dark.webp -------------------------------------------------------------------------------- /docs/resources/screenshot1_dark@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot1_dark@2x.webp -------------------------------------------------------------------------------- /docs/resources/screenshot2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot2.png -------------------------------------------------------------------------------- /docs/resources/screenshot2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot2.webp -------------------------------------------------------------------------------- /docs/resources/screenshot2@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot2@2x.webp -------------------------------------------------------------------------------- /docs/resources/screenshot2_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot2_dark.png -------------------------------------------------------------------------------- /docs/resources/screenshot2_dark.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot2_dark.webp -------------------------------------------------------------------------------- /docs/resources/screenshot2_dark@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/screenshot2_dark@2x.webp -------------------------------------------------------------------------------- /docs/resources/twitter_light.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/docs/resources/twitter_light.webp -------------------------------------------------------------------------------- /docs/robots.txt: -------------------------------------------------------------------------------- 1 | Sitemap: https://reportgenerator.io/sitemap.xml -------------------------------------------------------------------------------- /global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "9.0.300", 4 | "rollForward": "latestMajor" 5 | } 6 | } -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | /.vs 2 | /AzureDevopsTask*/ReportGenerator/tools 3 | /AzureDevopsTask*/ReportGenerator/reportgenerator.js 4 | /AzureDevopsTask*/*.vsix 5 | /TestResults 6 | /Testprojects/CoverageTools 7 | /Testprojects/TestResults 8 | /target 9 | /resources 10 | /publish.bat 11 | *.suo 12 | *.user 13 | *.Cache 14 | *.binlog 15 | bin 16 | obj 17 | .DS_Store 18 | .AssemblyAttributes 19 | .netconfig 20 | node_modules 21 | /_ReSharper.Caches -------------------------------------------------------------------------------- /src/AngularComponents/.gitignore: -------------------------------------------------------------------------------- 1 | # See http://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | # compiled output 4 | /dist 5 | /tmp 6 | /out-tsc 7 | # Only exists if Bazel was run 8 | /bazel-out 9 | 10 | # dependencies 11 | /node_modules 12 | 13 | # profiling files 14 | chrome-profiler-events*.json 15 | 16 | # IDEs and editors 17 | /.idea 18 | .project 19 | .classpath 20 | .c9/ 21 | *.launch 22 | .settings/ 23 | *.sublime-workspace 24 | 25 | # IDE - VSCode 26 | .vscode/* 27 | !.vscode/settings.json 28 | !.vscode/tasks.json 29 | !.vscode/launch.json 30 | !.vscode/extensions.json 31 | .history/* 32 | 33 | # misc 34 | /.angular/cache 35 | /.sass-cache 36 | /connect.lock 37 | /coverage 38 | /libpeerconnection.log 39 | npm-debug.log 40 | yarn-error.log 41 | testem.log 42 | /typings 43 | 44 | # System Files 45 | .DS_Store 46 | Thumbs.db 47 | 48 | /src/assets/sampledata -------------------------------------------------------------------------------- /src/AngularComponents/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "coverage-app", 3 | "version": "0.0.0", 4 | "scripts": { 5 | "ng": "ng", 6 | "start": "ng serve", 7 | "build": "ng build", 8 | "watch": "ng build --watch --configuration development" 9 | }, 10 | "private": true, 11 | "dependencies": { 12 | "@angular-slider/ngx-slider": "^19.0.0", 13 | "@angular/animations": "^19.2.11", 14 | "@angular/common": "^19.2.11", 15 | "@angular/compiler": "^19.2.11", 16 | "@angular/core": "^19.2.11", 17 | "@angular/forms": "^19.2.11", 18 | "@angular/platform-browser": "^19.2.11", 19 | "@angular/platform-browser-dynamic": "^19.2.11", 20 | "@angular/router": "^19.2.11", 21 | "rxjs": "~7.8.1", 22 | "tslib": "^2.6.3", 23 | "zone.js": "~0.15.0" 24 | }, 25 | "devDependencies": { 26 | "@angular-devkit/build-angular": "^19.2.13", 27 | "@angular/cli": "^19.2.13", 28 | "@angular/compiler-cli": "^19.2.11", 29 | "@types/node": "^12.11.1", 30 | "typescript": "~5.5.3" 31 | } 32 | } -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/coverageinfo/data/assembly.class.ts: -------------------------------------------------------------------------------- 1 | import { Class } from "./class.class"; 2 | 3 | export class Assembly { 4 | name: string = ""; 5 | classes: Class[] = []; 6 | } 7 | -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/coverageinfo/data/coverageinfo-settings.class.ts: -------------------------------------------------------------------------------- 1 | import { Metric } from "./metric.class"; 2 | 3 | export class CoverageInfoSettings { 4 | showLineCoverage: boolean = true; 5 | showBranchCoverage: boolean = true; 6 | showMethodCoverage: boolean = true; 7 | showFullMethodCoverage: boolean = true; 8 | visibleMetrics: Metric[] = []; 9 | 10 | groupingMaximum: number = 0; 11 | grouping: number = 0; 12 | historyComparisionDate: string = ""; 13 | historyComparisionType: string = ""; 14 | 15 | filter: string = ""; 16 | lineCoverageMin: number = 0; 17 | lineCoverageMax: number = 100; 18 | branchCoverageMin: number = 0; 19 | branchCoverageMax: number = 100; 20 | methodCoverageMin: number = 0; 21 | methodCoverageMax: number = 100; 22 | methodFullCoverageMin: number = 0; 23 | methodFullCoverageMax: number = 100; 24 | 25 | sortBy: string = "name"; 26 | sortOrder: string = "asc"; 27 | 28 | collapseStates: boolean[] = []; 29 | } 30 | -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/coverageinfo/data/metric.class.ts: -------------------------------------------------------------------------------- 1 | export class Metric { 2 | name: string = ""; 3 | abbreviation: string = ""; 4 | explanationUrl: string = ""; 5 | } 6 | -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/coverageinfo/pro-button.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, Input } from "@angular/core"; 2 | 3 | @Component({ 4 | selector: "pro-button", 5 | template: ` PRO`, 6 | standalone: false 7 | }) 8 | export class ProButton { 9 | @Input() translations: any = { }; 10 | } -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/coverageinfo/viewmodels/helper.class.ts: -------------------------------------------------------------------------------- 1 | export class Helper { 2 | static maximumDecimalPlacesForCoverageQuotas: number; 3 | 4 | static roundNumber(number: number): number { 5 | return Math.floor(number * Math.pow(10, Helper.maximumDecimalPlacesForCoverageQuotas)) / Math.pow(10, Helper.maximumDecimalPlacesForCoverageQuotas); 6 | } 7 | 8 | static getNthOrLastIndexOf(text: string, substring: string, n: number): number { 9 | let times: number = 0; 10 | let index: number = -1; 11 | let currentIndex: number = -1; 12 | 13 | while (times < n) { 14 | currentIndex = text.indexOf(substring, index + 1); 15 | if (currentIndex === -1) { 16 | break; 17 | } else { 18 | index = currentIndex; 19 | } 20 | 21 | times++; 22 | } 23 | 24 | return index; 25 | } 26 | } -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/globalhistorystate.ts: -------------------------------------------------------------------------------- 1 | import { CoverageInfoSettings } from "./coverageinfo/data/coverageinfo-settings.class"; 2 | import { RiskHotspotsSettings } from "./riskhotspots/data/riskhotspots-settings.class"; 3 | 4 | export class GlobalHistoryState { 5 | riskHotspotsSettings: RiskHotspotsSettings|null = null; 6 | coverageInfoSettings: CoverageInfoSettings|null = null; 7 | } 8 | -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/riskhotspots/data/metric.class.ts: -------------------------------------------------------------------------------- 1 | export class Metric { 2 | value: number = 0; 3 | exceeded: boolean = false; 4 | } -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/riskhotspots/data/riskhotspot-metric.class.ts: -------------------------------------------------------------------------------- 1 | export class RiskHotspotMetric { 2 | name: string = ""; 3 | explanationUrl: string = ""; 4 | } -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/riskhotspots/data/riskhotspot.class.ts: -------------------------------------------------------------------------------- 1 | import { Metric } from "./metric.class"; 2 | 3 | export class RiskHotspot { 4 | assembly: string = ""; 5 | class: string = ""; 6 | reportPath: string = ""; 7 | methodName: string = ""; 8 | methodShortName: string = ""; 9 | fileIndex: number = 0; 10 | line: number = 0; 11 | metrics: Metric[] = []; 12 | } -------------------------------------------------------------------------------- /src/AngularComponents/src/app/components/riskhotspots/data/riskhotspots-settings.class.ts: -------------------------------------------------------------------------------- 1 | export class RiskHotspotsSettings { 2 | assembly: string = ""; 3 | numberOfRiskHotspots: number = 10; 4 | filter: string = ""; 5 | 6 | sortBy: string = ""; 7 | sortOrder: string = "asc"; 8 | } 9 | -------------------------------------------------------------------------------- /src/AngularComponents/src/app/infrastructure/windowref.service.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | 3 | function getWindow (): any { 4 | return window; 5 | } 6 | 7 | @Injectable() 8 | export class WindowRefService { 9 | get nativeWindow (): any { 10 | return getWindow(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danielpalme/ReportGenerator/c68f7ccc8a96e4ba711598bedc7d8decbdb2506d/src/AngularComponents/src/assets/.gitkeep -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/icon_down-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/icon_info-circled.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/icon_minus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/icon_plus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/icon_up-dir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/AngularComponents/src/assets/icon_up-dir_active.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/AngularComponents/src/class.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 |...
16 |null
.
13 | /// null
if an error occurs, otherwise the lines of the file.