Dependency Graph

Online documentation:

Dependency Matrix

Online documentation:

Visualizing Code Metrics through Treemaping

With the Online documentation, understand how Treemaping can help you see patterns in your code base, that would be hard to spot with other ways.

Abstractness versus Instability Diagram

The Abstractness versus Instability Diagram helps to detect which assemblies are potentially painful to maintain (i.e concrete and stable) and which assemblies are potentially useless (i.e abstract and instable).

Online documentation:

For beginners: Where to start

Code queries and rules results are truncated to list a maximum of 20 code elements in this report

Does this report gets too large?

ClearstreamAPIConnector (v1.0.0.0) \ Main
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Quality Gates
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Quality Gates \ Quality Gates
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules \ Object Oriented Design
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules \ Design
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules \ Dead Code
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules \ Security
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules \ Visibility
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Rules \ Source Files Organization
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Group of Queries \ Hot Spots
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Group of Queries \ Object Oriented Design
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Group of Queries \ API Breaking Changes
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Group of Queries \ Code Coverage
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Group of Queries \ Dead Code
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Group of Queries \ Code Diff Summary
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Metrics \ Application Statistics
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Metrics \ Assemblies Metrics
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Metrics \ Namespaces Metrics
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Metrics \ Types Metrics
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Assemblies Dependencies
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Namespaces Dependencies
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Types Dependencies
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Build Order
ClearstreamAPIConnector (v1.0.0.0) \ Main \ Abstractness vs. Instability
report date04 Jul 2024 11:53:22
analysis duration00:05.663
ndepend version 2024.1.1   Professional Developer/Build-Machine Edition
baselineBaseline is same code base snapshot.
code coverage data Not Defined. To import Code Coverage Data, please read this online documentation.

Diagrams

;TinyComponentDependenciesDiagram.png
Dependency Graph
View as ?fullscaled
;TinyComponentDependenciesMatrix.png
Dependency Matrix
View as ?fullscaled
;TinyVisualNDependView.png
Treemap Metric View
View as ?fullscaled
;TinyAbstractnessVSInstability.png
Abstractness vs. Instability

Application Metrics

Note: Further Application Statistics are available.
# Lines of Code
213   ;TrendIconGrayConstant.png   no diff
0   (NotMyCode)   ;TrendIconGrayConstant.png   no diff
Estimated Dev Effort   5.49d   ;TrendIconGrayConstant.png   no diff
# Types
5   ;TrendIconGrayConstant.png   no diff
1   Assemblies   ;TrendIconGrayConstant.png   no diff
4   Namespaces   ;TrendIconGrayConstant.png   no diff
14   Methods   ;TrendIconGrayConstant.png   no diff
0   Fields   ;TrendIconGrayConstant.png   no diff
8   Source Files   ;TrendIconGrayConstant.png   no diff
586   Line Feed   ;TrendIconGrayConstant.png   no diff
220   Third-Party Elements   ;TrendIconGrayConstant.png   no diff
Comment
35.84%   ;TrendIconGrayConstant.png   no diff
119   Lines of Comment   ;TrendIconGrayConstant.png   no diff
Debt
6.64%   ;TrendIconGrayConstant.png   no diff
Rating   B   43min effort to reach  A
Debt   2h 55min   ;TrendIconGrayConstant.png   no diff
The technical-debt is incomplete because no coverage data specified.      
CoverageN/A because no coverage data specified
Method Complexity (IL)
34   Max   ;TrendIconGrayConstant.png   no diff
4.77   Average   ;TrendIconGrayConstant.png   no diff
Quality Gates
;StatusQGFail.pngFail0
;StatusQGWarn.pngWarn0
;StatusQGPass.pngPass12
Rules
;StatusWarningCritical.pngCritical0
;StatusWarning.pngViolated8
;StatusBigOk.pngOk158
Issues
;Empty.pngAll19
;Severity_Blocker.pngBlocker0
;Severity_Critical.pngCritical0
;Severity_High.pngHigh6
;Severity_Medium.pngMedium5
;Severity_Low.pngLow8
;Empty.pngSuppressed0
0
  • The number of projects with no issues.
  • Sort the column #Un-resolved ascending to list these files first.
1
  • The number of projects with at least one unresolved issue but no new issue added since the baseline.
  • Sort the column #Un-resolved Issues to list these files first.
0
  • The number of projects with at least one new issue introduced since the baseline.
  • Sort the column #New Issues to list these files first.
;InfoSmall.png Clicking a project's name selects its associated source files under the Issues tab.
This occurs because the search pattern for the source files grid is set to the project's name.
Project Name#New Issues#Un- resolved#Fixed
New Debt
Debt%Cov#Types#Statements
;Project-CSharp.pngClearstreamAPIConnector01900min 0s2h 55minN/A9213
;StatusQGPass.png12 pass
  • The number of Quality Gates that pass.
  • A Quality Gate passes if its value is lower than its warning threshold, and lower than its failure threshold.
;StatusQGWarn.png0 warn
  • The number of Quality Gates that warn.
  • A Quality Gate warns if its value is equal to or higher than its warning threshold, but lower than its failure threshold.
;StatusQGFail.png0 fail
  • The number of Quality Gates that fail.
  • A Quality Gate fails if its value is equal to or higher than its failure threshold. If any, it means that the code is not ready for production. You have the option to stop the build process upon any Quality Gate failure.
;Info.png Quality Gates that measure diff cannot
be run on the baseline. Hence they
have blank trend and baseline value.
NameTrendBaseline StatusStatusGroup
;StatusQGPass.png   Percentage Coverage
;TrendIconGrayConstant.png;StatusQGPass.pngN/A %;StatusQGPass.pngN/A %Quality Gates
;StatusQGPass.png   Percentage Coverage on New Code
;TrendIconGrayConstant.png;StatusQGPass.pngN/A %;StatusQGPass.pngN/A %Quality Gates
;StatusQGPass.png   Percentage Coverage on Refactored Code
;TrendIconGrayConstant.png;StatusQGPass.pngN/A %;StatusQGPass.pngN/A %Quality Gates
;StatusQGPass.png   Blocker Issues
;TrendIconGrayConstant.png;StatusQGPass.png0 issues;StatusQGPass.png0 issuesQuality Gates
;StatusQGPass.png   Critical Issues
;TrendIconGrayConstant.png;StatusQGPass.png0 issues;StatusQGPass.png0 issuesQuality Gates
;StatusQGPass.png   New Blocker / Critical / High Issues
;StatusQGPass.png0 issuesQuality Gates
;StatusQGPass.png   Critical Rules Violated
;TrendIconGrayConstant.png;StatusQGPass.png0 rules;StatusQGPass.png0 rulesQuality Gates
;StatusQGPass.png   Treat Compiler Warnings as Error
;TrendIconGrayConstant.png;StatusQGPass.png0 issues;StatusQGPass.png0 issuesQuality Gates
;StatusQGPass.png   Percentage Debt
;TrendIconGrayConstant.png;StatusQGPass.png6.64 %;StatusQGPass.png6.64 %Quality Gates
;StatusQGPass.png   New Debt since Baseline
;StatusQGPass.png0 man-daysQuality Gates
;StatusQGPass.png   Debt Rating per Namespace
;TrendIconGrayConstant.png;StatusQGPass.png0 namespaces;StatusQGPass.png0 namespacesQuality Gates
;StatusQGPass.png   New Annual Interest since Baseline
;StatusQGPass.png0 man-daysQuality Gates
;StatusBigOk.png158 pass
  • The number of CQLinq rules that are not violated. Those rules are not listed below.
  • Notice that Roslyn Analyzers that pass are not imported. Thus, they are not counted in this number.
;StatusWarning.png8 violated The number of CQLinq rules and Roslyn Analyzers that are violated. They are listed below.;StatusWarningCritical.png0 violated
  • The number of CQLinq rules marked as critical that are violated. They are listed below with a top-left red tick.
  • By sorting the first column, violated critical rules can be listed first.
;InfoSmall.png
  • Rules can also be checked live at development-time, from within the IDE Online documentation.
  • Rules that rely on diff cannot be run on the baseline. Hence, they have blank values in column #New Issues or Fixed.
  • Number of Rules or Queries with Error (syntax error, exception thrown, time-out): 0

Size

% Coverage and % Debt

Issues

Rules

Quality Gates

Debt

Analysis Logs

Logs emitted during NDepend analysis.

Warnings can reveal potential flaws concerning the health of the build process.

A particular warning can be disabled through the NDepend interactive UI, panel Error List, tick the checkbox Disabled corresponding to the warning to disable.

Message
;InfoBig.pngBegin full analysis with NDepend v2024.1.1 on 04 Jul 2024 11:53:22
;InfoBig.pngVisual Studio solution file resolved to absolute file path: from {.\ClearstreamAPIConnector.sln} to {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.sln}
;InfoBig.pngOutput directory resolved to absolute directory path: C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\NDependOut
;InfoBig.png.NET Assembly resolved from the Visual Studio solution file {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.sln} C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\bin\Debug\net7.0\ClearstreamAPIConnector.dll
;InfoBig.pngNo .NET Assembly filtered out from the Visual Studio solution file {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.sln}.
;InfoBig.pngConcurrent mode
;StatusWarning.pngThe source file {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\DiTemplate.cs} (last modified 26 Jun 2024 08:42:44) and the PDB file of the assembly {ClearstreamAPIConnector} (last modified 18 Aug 2023 12:45:55) are not in-sync.
;StatusWarning.pngThe source file {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\LoggingHandler.cs} (last modified 26 Jun 2024 08:42:44) and the PDB file of the assembly {ClearstreamAPIConnector} (last modified 18 Aug 2023 12:45:55) are not in-sync.
;StatusWarning.pngThe source file {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\Program.cs} (last modified 26 Jun 2024 08:42:44) and the PDB file of the assembly {ClearstreamAPIConnector} (last modified 18 Aug 2023 12:45:55) are not in-sync.
;StatusWarning.pngThe source file {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\Token.cs} (last modified 26 Jun 2024 08:42:44) and the PDB file of the assembly {ClearstreamAPIConnector} (last modified 18 Aug 2023 12:45:55) are not in-sync.
;InfoBig.png4 source files parsed ; 4 source files not found ; 4 source files not in-sync with PDB
;InfoBig.png0 code rule has been extracted from code.
;InfoBig.pngNo issue have been imported. No directory that contains issue files have been resolved from the project ClearstreamAPIConnector
;InfoBig.pngNo dependency cycle detected in assemblies referencement graph.
;InfoBig.pngDo merge code generated by compiler into application code.
;InfoBig.pngAnalyze dependencies of your application.
;InfoBig.pngNo SuppressMessageAttribute found in the analyzed code base. Since NDepend v2018.2 SuppressMessageAttribute can be used to suppress NDepend issues. Don't forget to set in your projects the compilation symbol CODE_ANALYSIS to use this attribute to suppress NDepend issues.
;InfoBig.pngPersisting code model snapshot in {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\NDependOut\NDependAnalysisResult_ClearstreamAPIConnector_2024Jul04_11h53m22.ndar}
;StatusWarning.pngThe source directory {C:\Users\johan\OneDrive\DEV\ClearstreamAPIConnector} referenced by the PDB file of the assembly {ClearstreamAPIConnector} can't be found.
;InfoBig.pngLog trend metrics values.
;StatusWarning.pngRule {From now, all types added should be 100% covered by tests} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {From now, all types added should be 100% covered by tests} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Avoid decreasing code coverage by tests of types} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Avoid decreasing code coverage by tests of types} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Code should be tested} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Code should be tested} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {New Types and Methods should be tested} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {New Types and Methods should be tested} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Methods refactored should be tested} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Methods refactored should be tested} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Assemblies and Namespaces should be tested} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Assemblies and Namespaces should be tested} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types almost 100% tested should be 100% tested} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types almost 100% tested should be 100% tested} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Namespaces almost 100% tested should be 100% tested} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Namespaces almost 100% tested should be 100% tested} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types that used to be 100% covered by tests should still be 100% covered} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types that used to be 100% covered by tests should still be 100% covered} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types tagged with FullCoveredAttribute should be 100% covered} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types tagged with FullCoveredAttribute should be 100% covered} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types 100% covered should be tagged with FullCoveredAttribute} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Types 100% covered should be tagged with FullCoveredAttribute} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Methods should have a low C.R.A.P score} relies on code coverage data that is not available in the baseline code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngRule {Methods should have a low C.R.A.P score} relies on code coverage data that is not available in the newer code base snapshot. The rule hasen't been executed on both baseline and newer code base snapshots.
;StatusWarning.pngQuality Gate {Percentage Coverage} relies on code coverage data that is not available in the baseline code base snapshot.
;StatusWarning.pngQuality Gate {Percentage Coverage} relies on code coverage data that is not available in the newer code base snapshot.
;StatusWarning.pngQuality Gate {Percentage Coverage on New Code} relies on code coverage data that is not available in the baseline code base snapshot.
;StatusWarning.pngQuality Gate {Percentage Coverage on New Code} relies on code coverage data that is not available in the newer code base snapshot.
;StatusWarning.pngQuality Gate {Percentage Coverage on Refactored Code} relies on code coverage data that is not available in the baseline code base snapshot.
;StatusWarning.pngQuality Gate {Percentage Coverage on Refactored Code} relies on code coverage data that is not available in the newer code base snapshot.
;InfoBig.pngExecute queries and rules
;InfoBig.pngOutput report source files
;StatusWarning.pngThe baseline versions of source files modified are not available in the report. Reason: Cannot find the file {SourceFiles.zip} in the analysis result directory {C:\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\NDependOut}. Make sure that the NDepend Project Properties > Analysis > Zip Source Files setting is enabled.
;InfoBig.pngOutput report projects
;InfoBig.pngBuilding the report (standard).
;InfoBig.pngNDepend analysis done. Duration: 00:05.663

Application Statistics

Stat # Occurences Avg StdDev Max
Properties on interfaces interfaces 00-1 properties on
Methods on interfaces interfaces 00-1 methods on
Arguments on methods on interfaces methods 00-1 arguments on
Public properties on classes 9 Classes 1.563.2410 public properties on TestClearstreamAPIEndpoint.DiTemplate
Public methods on classes 9 classes 4.226.4321 public methods on TestClearstreamAPIEndpoint.DiTemplate
Arguments on public methods on classes 38 methods 0.50.51 arguments on System.Runtime.CompilerServices.NullableAttribute..ctor(Byte)
IL instructions in non-abstract methods 47 methods 52.57121.36430 IL instructions in TestClearstreamAPIEndpoint.Program.GetRefreshTokenAsync(Token)
Cyclomatic complexity on non abstract Methods 47 Methods 4.779.64 CC = 34 for TestClearstreamAPIEndpoint.Program.GetRefreshTokenAsync(Token)

Assemblies Metrics

If you wish to define thresholds on assemblies' Code Metrics, consider writing some Rules.
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.

If you wish to define thresholds on types' Code Metrics, consider writing some Rule.
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.

Types Metrics : Code Quality

Type Name Type Rank# Lines Of Code# IL Instructions# Lines Of Comment% CommentCyclomatic ComplexityIL Cyclomatic Complexity% CoverageAfferent CouplingEfferent Coupling Type Namespace
EmbeddedAttribute4.5104---1-33Microsoft.CodeAnalysis
NullableAttribute4.49019---2-57System.Runtime.CompilerServices
NullableContextAttribute2.6407---1-46System.Runtime.CompilerServices
DiTemplate2.12207400021-28TestClearstreamAPIEndpoint
LoggingHandler0.271326700020-123TestClearstreamAPIEndpoint
DiTemplateList0.2704---1-14TestClearstreamAPIEndpoint
Token0.278320009-18
Program0.151722057000168-063TestClearstreamAPIEndpoint
RefSafetyRulesAttribute0.1507---1-06System.Runtime.CompilerServices


  

Types Metrics : Code Members and Inheritance

Type Name # Instance Methods Nb Static Methods Nb Properties # Fields# Children ClassesDepth Of Inheritance Tree Type Namespace
EmbeddedAttribute100002Microsoft.CodeAnalysis
NullableAttribute200102System.Runtime.CompilerServices
NullableContextAttribute100102System.Runtime.CompilerServices
DiTemplate210101001TestClearstreamAPIEndpoint
LoggingHandler200001TestClearstreamAPIEndpoint
DiTemplateList100001TestClearstreamAPIEndpoint
Token904401
Program180001TestClearstreamAPIEndpoint
RefSafetyRulesAttribute100102System.Runtime.CompilerServices


  

Types Metrics : Lack Of Cohesion Of Methods and Association Between Classes

Type Name Lack Of Cohesion Of MethodsLack Of Cohesion Of Methods HSAssociation Between Classes Type Namespace
EmbeddedAttribute001Microsoft.CodeAnalysis
NullableAttribute001System.Runtime.CompilerServices
NullableContextAttribute001System.Runtime.CompilerServices
DiTemplate001TestClearstreamAPIEndpoint
LoggingHandler0018TestClearstreamAPIEndpoint
DiTemplateList001TestClearstreamAPIEndpoint
Token001
Program0081TestClearstreamAPIEndpoint
RefSafetyRulesAttribute001System.Runtime.CompilerServices

Namespaces Metrics

If you wish to define thresholds on namespaces' Code Metrics, consider writing some Code Rules.
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.
Namespaces # lines of code# IL instruction # Types # lines of comment% Comment% CoverageAfferent CouplingEfferent Coupling
8321---14
Microsoft.CodeAnalysis041---12
ClearstreamAPIConnector .dll::System.Runtime .CompilerServices0333---23
TestClearstreamAPIEndpoint20524024---019

Quality Gates
1200

;QGPass.png   Quality Gate Pass:    Percentage Coverage
• Quality Gate Description:

Code coverage is a measure used to describe the degree to which the source code of a program is tested by a particular test suite. A program with high code coverage, measured as a percentage, has had more of its source code executed during testing which suggests it has a lower chance of containing undetected software bugs compared to a program with low code coverage.

Code coverage is certainly the most important quality code metric. But coverage is not enough the team needs to ensure that results are checked at test-time. These checks can be done both in test code, and in application code through assertions. The important part is that a test must fail explicitly when a check gets unvalidated during the test execution.

This quality gate defines a warn threshold (80%) and a fail threshold (70%). These are indicative thresholds and in practice the more the better. To achieve high coverage and low risk, make sure that new and refactored classes gets 100% covered by tests and that the application and test code contains as many checks/assertions as possible.

Scalar Result: N/A %

;QGPass.png   Quality Gate Pass:    Percentage Coverage on New Code
• Quality Gate Description:

New Code is defined as methods added since the baseline.

To achieve high code coverage it is essential that new code gets properly tested and covered by tests. It is advised that all non-UI new classes gets 100% covered.

Typically 90% of a class is easy to cover by tests and 10% is hard to reach through tests. It means that this 10% remaining is not easily testable, which means it is not well designed, which often means that this code is especially error-prone. This is the reason why it is important to reach 100% coverage for a class, to make sure that potentially error-prone code gets tested.

Scalar Result: N/A %

;QGPass.png   Quality Gate Pass:    Percentage Coverage on Refactored Code

Scalar Result: N/A %

;QGPass.png   Quality Gate Pass:    Blocker Issues
• Quality Gate Description:

An issue with the severity Blocker cannot move to production, it must be fixed.

The severity of an issue is either defined explicitly in the rule source code, either inferred from the issue annual interest and thresholds defined in the NDepend Project Properties > Issue and Debt.

No issue matched

;QGPass.png   Quality Gate Pass:    Critical Issues
• Quality Gate Description:

An issue with a severity level Critical shouldn't move to production. It still can for business imperative needs purposes, but at worst it must be fixed during the next iterations.

The severity of an issue is either defined explicitly in the rule source code, either inferred from the issue annual interest and thresholds defined in the NDepend Project Properties > Issue and Debt.

No issue matched

;QGPass.png   Quality Gate Pass:    New Blocker / Critical / High Issues

No issue matched

;QGPass.png   Quality Gate Pass:    Critical Rules Violated

No rule matched

;QGPass.png   Quality Gate Pass:    Treat Compiler Warnings as Error

No issue matched

;QGPass.png   Quality Gate Pass:    Percentage Debt

Scalar Result: 6.64 %

;QGPass.png   Quality Gate Pass:    New Debt since Baseline
• Quality Gate Description:

This Quality Gate fails if the estimated effort to fix new or worsened issues (what is called the New Debt since Baseline) is higher than 2 man-days.

This Quality Gate warns if this estimated effort is positive.

Debt documentation: https://www.ndepend.com/docs/technical-debt#Debt

Scalar Result: 0 man-days

;QGPass.png   Quality Gate Pass:    Debt Rating per Namespace

No namespace matched

;QGPass.png   Quality Gate Pass:    New Annual Interest since Baseline

Scalar Result: 0 man-days

Hot Spots
000

    Code Smells
    000

      Code Smells Regression
      000

        Object Oriented Design
        000

          Design
          000

            Architecture
            000

              API Breaking Changes
              000

                Code Coverage
                000

                  Dead Code
                  000

                    Security
                    000

                      Visibility
                      000

                        Immutability
                        000

                          Naming Conventions
                          000

                            Source Files Organization
                            000

                              ;GroupHierarchy.png
                              .NET Framework Usage
                              000

                                ;GroupHierarchy.png
                                API Usage
                                000

                                  Defining JustMyCode
                                  000

                                    ;GroupHierarchy.png
                                    Trend Metrics
                                    000

                                      Code Diff Summary
                                      000

                                        Roslyn Analyzers
                                        000

                                          Rules extracted from Source Code
                                          000

                                            Object Oriented Design
                                            1310

                                            ;Warning.png   Rule Violated:    ND1203    Class with no descendant should be sealed if possible

                                            3 types matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            3 types# lines of code (LOC)DebtSeverityFull Name
                                            ;class.pngProgram|m100|0| 172|m0|0| 0min 30s0MediumTestClearstreamAPIEndpoint.Program
                                            ;class.pngToken|m4|1| 8|m0|1| 0min 30s1MediumToken
                                            ;class.pngDiTemplateList|m0|2| 0|m0|2| 0min 30s2MediumTestClearstreamAPIEndpoint .DiTemplateList

                                            Design
                                            1110

                                            ;Warning.png   Rule Violated:    ND1307    Declare types in namespaces

                                            1 namespace matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            1 namespacechildTypes# lines of code (LOC)DebtSeverityFull Name
                                            N:anonymous namespace in assembly ClearstreamAPIConnector|m0|0|

                                            1 type

                                            |m0|0| 8|m0|0| 2min 0s0Medium{anonymous namespace} in assembly ClearstreamAPIConnector

                                            Dead Code
                                            310

                                            ;Warning.png   Rule Violated:    ND1701    Potentially Dead Methods

                                            3 methods matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            3 methodsdepthMethodsCallingMeDebtAnnual InterestFull Name
                                            ;method.pngValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)|m0|0| 00no method|m0|0| 10min210minTestClearstreamAPIEndpoint.Program .ValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)
                                            ;method.pngGetRefreshTokenAsync(Token)|m0|1| 01no method|m0|1| 10min042minTestClearstreamAPIEndpoint.Program .GetRefreshTokenAsync(Token)
                                            ;method.pngCallClearstreamPlaygroundApiAsyn c (Token)|m0|2| 02no method|m0|2| 10min128minTestClearstreamAPIEndpoint.Program .CallClearstreamPlaygroundApiAsync (Token)

                                            Security
                                            810

                                            ;Warning.png   Rule Violated:    ND3103    Don't disable certificate validation

                                            3 methods matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            3 methodsDebtSeverityFull Name
                                            ;method.pngGetRefreshTokenAsync(Token)|m0|0| 30min0HighTestClearstreamAPIEndpoint.Program .GetRefreshTokenAsync(Token)
                                            ;method.pngGetElibilityTokenAsync()|m0|1| 30min1HighTestClearstreamAPIEndpoint.Program .GetElibilityTokenAsync()
                                            ;method.pngMain(String[])|m0|2| 30min2HighTestClearstreamAPIEndpoint.Program .Main(String[])

                                            Visibility
                                            920

                                            ;Warning.png   Rule Violated:    ND1807    Avoid public methods not publicly visible

                                            3 methods matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            3 methodsparentTypeVisibilitydeclareMethodAsmethodsCallerDebtSeverityFull Name
                                            ;property-get.pngget_access_token()0declared as *internal*0internal|m100|0|

                                            3 methods

                                            |m0|0| 0min 30s0LowToken.get_access_token()
                                            ;property-get.pngget_expires_in()1declared as *internal*1internal|m0|2|

                                            1 method

                                            |m0|1| 0min 30s1LowToken.get_expires_in()
                                            ;property-get.pngget_refresh_token()2declared as *internal*2internal|m50|1|

                                            2 methods

                                            |m0|2| 0min 30s2LowToken.get_refresh_token()
                                            ;Warning.png   Rule Violated:    ND1803    Types that could be declared as private, nested in a parent type

                                            1 type matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            1 typecouldBeNestedInDebtSeverityFull Name
                                            ;class.pngDiTemplateList0;class.pngTestClearstreamAPIEndpoint.Program|m0|0| 3min 0s0LowTestClearstreamAPIEndpoint .DiTemplateList

                                            Source Files Organization
                                            420

                                            ;Warning.png   Rule Violated:    ND2100    Avoid referencing source file out of the project directory

                                            4 types matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            4 typessourceFilePathprojectFilePathDebtSeverityFull Name
                                            ;class.pngToken1;class.png\Users\johan\OneDrive\DEV\ClearstreamAPIConnector\Token.cs1;class.png\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.csproj|m0|1| 10min1LowToken
                                            ;class.pngDiTemplate0;class.png\Users\johan\OneDrive\DEV\ClearstreamAPIConnector\DiTemplate.cs0;class.png\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.csproj|m0|0| 10min0LowTestClearstreamAPIEndpoint .DiTemplate
                                            ;class.pngLoggingHandler3;class.png\Users\johan\OneDrive\DEV\ClearstreamAPIConnector\LoggingHandler.cs3;class.png\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.csproj|m0|3| 10min3LowTestClearstreamAPIEndpoint .LoggingHandler
                                            ;class.pngProgram2;class.png\Users\johan\OneDrive\DEV\ClearstreamAPIConnector\Program.cs2;class.png\Users\Johannes Rest\OneDrive\DEV\ClearstreamAPIConnector\ClearstreamAPIConnector.csproj|m0|2| 10min2LowTestClearstreamAPIEndpoint.Program
                                            ;Warning.png   Rule Violated:    ND2104    Types with source files stored in the same directory, should be declared in the same namespace

                                            1 namespace matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            1 namespacetypesOutOfMainNamespacetypesInMainNamespaceDebtSeverityFull Name
                                            ;namespace.pngTestClearstreamAPIEndpoint|m0|0|

                                            1 type

                                            |m0|0|

                                            3 types

                                            |m0|0| 7min0HighTestClearstreamAPIEndpoint

                                            Hot Spots

                                            ;Ok.png   Code Query:    Types Hot Spots

                                            3 types matched

                                            3 typesDebtIssuesAnnual InterestBreaking Point# lines of code (LOC)DebtRatingDebtRatioFull Name
                                            ;class.pngProgram|m100|0| 2h 10min|m100|0|

                                            First 3 of 8 issues

                                            |m100|0| 2h 22min|m0|2| 335d|m100|0| 1721B|m19|1| 8.3TestClearstreamAPIEndpoint.Program
                                            ;class.pngToken|m6|1| 12min|m50|1|

                                            First 3 of 5 issues

                                            • ;class.pngToken violates rule 'Class with no descendant should be sealed if possible'
                                            • ;class.pngToken violates rule 'Avoid referencing source file out of the project directory'
                                            • ;property-get.pngToken.get_access_token() violates rule 'Avoid public methods not publicly visible'
                                            |m0|1| 2min 0s|m100|0| 6y|m4|1| 82B|m0|2| 5.34Token
                                            ;class.pngDiTemplateList|m0|2| 3min 30s|m0|2|

                                            2 issues

                                            • TestClearstreamAPIEndpoint .DiTemplateList} violates rule 'Class with no descendant should be sealed if possible'
                                            • TestClearstreamAPIEndpoint .DiTemplateList} violates rule 'Types that could be declared as private, nested in a parent type'
                                            |m0|2| 2min 0s|m16|1| 1y 273d|m0|2| 00D|m100|0| 20.25TestClearstreamAPIEndpoint .DiTemplateList
                                            ;Ok.png   Code Query:    Types to Fix Priority

                                            1 type matched

                                            1 typeBreaking PointDebtAnnual InterestIssues# lines of code (LOC)DebtRatingDebtRatioFull Name
                                            ;class.pngProgram|m0|0| 335d|m0|0| 2h 10min|m0|0| 2h 22min|m0|0|

                                            First 3 of 8 issues

                                            |m0|0| 1720B|m0|0| 8.3TestClearstreamAPIEndpoint.Program
                                            ;Ok.png   Code Query:    Issues to Fix Priority

                                            19 issues matched

                                            19 issuesDebtAnnual InterestBreaking PointCodeElementFull Name
                                            High issue on: ;method.pngTestClearstreamAPIEndpoint .Program .GetRefreshTokenAsync(Token)|m32|05| 10min0042min|m15|10| 86d06;method.pngTestClearstreamAPIEndpoint.Program .GetRefreshTokenAsync(Token)Rule violated: Potentially Dead Methods
                                            Medium issue on: ;class.pngTestClearstreamAPIEndpoint .Program|m0|14| 0min 30s102min 0s|m16|09| 91d05;class.pngTestClearstreamAPIEndpoint.ProgramRule violated: Class with no descendant should be sealed if possible
                                            Medium issue on: ;class.pngToken|m0|13| 0min 30s072min 0s|m16|07| 91d08;class.pngTokenRule violated: Class with no descendant should be sealed if possible
                                            {C:TestClearstreamAPIEndpoint .DiTemplateList}|m0|18| 0min 30s082min 0s|m16|08| 91d07;class.pngTestClearstreamAPIEndpoint .DiTemplateListRule violated: Class with no descendant should be sealed if possible
                                            {N:TestClearstreamAPIEndpoint}|m22|10| 7min0420min|m23|06| 127d04;namespace.pngTestClearstreamAPIEndpointRule violated: Types with source files stored in the same directory, should be declared in the same namespace
                                            High issue on: ;method.pngTestClearstreamAPIEndpoint .Program .CallClearstreamPlaygroundApiAsync (Token)|m32|06| 10min0128min|m23|05| 130d01;method.pngTestClearstreamAPIEndpoint.Program .CallClearstreamPlaygroundApiAsync (Token)Rule violated: Potentially Dead Methods
                                            Medium issue on: ;namespace.png{anonymous namespace in assembly ClearstreamAPIConnector}|m5|12| 2min 0s092min 0s|m66|04| 1y00N:anonymous namespace in assembly ClearstreamAPIConnectorRule violated: Declare types in namespaces
                                            Medium issue on: ;method.pngTestClearstreamAPIEndpoint .Program .ValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)|m32|04| 10min0610min|m66|03| 1y03;method.pngTestClearstreamAPIEndpoint.Program .ValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)Rule violated: Potentially Dead Methods
                                            High issue on: ;method.pngTestClearstreamAPIEndpoint .Program .GetRefreshTokenAsync(Token)|m100|01| 30min0520min|m100|00| 1y 182d02;method.pngTestClearstreamAPIEndpoint.Program .GetRefreshTokenAsync(Token)Rule violated: Don't disable certificate validation
                                            High issue on: ;method.pngTestClearstreamAPIEndpoint .Program .GetElibilityTokenAsync()|m100|02| 30min0220min|m100|02| 1y 182d09;method.pngTestClearstreamAPIEndpoint.Program .GetElibilityTokenAsync()Rule violated: Don't disable certificate validation
                                            High issue on: ;method.pngTestClearstreamAPIEndpoint .Program .Main(String[])|m100|00| 30min0320min|m100|01| 1y 182d16;method.pngTestClearstreamAPIEndpoint.Program .Main(String[])Rule violated: Don't disable certificate validation
                                            {C:TestClearstreamAPIEndpoint .DiTemplateList}|m8|11| 3min 0s150min 0s|m0|16| 00:00:0015;class.pngTestClearstreamAPIEndpoint .DiTemplateListRule violated: Types that could be declared as private, nested in a parent type
                                            Low issue on: ;property-get.pngToken.get_access_token()|m0|16| 0min 30s170min 0s|m0|15| 00:00:0018;property-get.pngToken.get_access_token()Rule violated: Avoid public methods not publicly visible
                                            Low issue on: ;property-get.pngToken.get_expires_in()|m0|15| 0min 30s140min 0s|m0|18| 00:00:0017;property-get.pngToken.get_expires_in()Rule violated: Avoid public methods not publicly visible
                                            Low issue on: ;property-get.pngToken.get_refresh_token()|m0|17| 0min 30s160min 0s|m0|17| 00:00:0014;property-get.pngToken.get_refresh_token()Rule violated: Avoid public methods not publicly visible
                                            Low issue on: ;class.pngToken|m32|07| 10min180min 0s|m0|12| 00:00:0011;class.pngTokenRule violated: Avoid referencing source file out of the project directory
                                            Low issue on: ;class.pngTestClearstreamAPIEndpoint .DiTemplate|m32|08| 10min130min 0s|m0|11| 00:00:0010;class.pngTestClearstreamAPIEndpoint .DiTemplateRule violated: Avoid referencing source file out of the project directory
                                            Low issue on: ;class.pngTestClearstreamAPIEndpoint .LoggingHandler|m32|09| 10min110min 0s|m0|14| 00:00:0013;class.pngTestClearstreamAPIEndpoint .LoggingHandlerRule violated: Avoid referencing source file out of the project directory
                                            Low issue on: ;class.pngTestClearstreamAPIEndpoint .Program|m32|03| 10min120min 0s|m0|13| 00:00:0012;class.pngTestClearstreamAPIEndpoint.ProgramRule violated: Avoid referencing source file out of the project directory
                                            ;Ok.png   Code Query:    Debt and Issues per Rule

                                            8 rules matched

                                            8 rulesIssuesDebtAnnual InterestBreaking PointCategoryFull Name
                                            Don't disable certificate validation|m66|1|

                                            3 issues

                                            |m100|0| 1h 30min|m75|1| 1h 0min|m100|0| 1y 182d2Project Rules \ SecurityRule
                                            Avoid referencing source file out of the project directory|m100|0|

                                            First 3 of 4 issues

                                            |m43|1| 40min|m0|6| 0min 0s|m0|6| 00:00:003Project Rules \ Source Files OrganizationRule
                                            Potentially Dead Methods|m66|2|

                                            3 issues

                                            |m32|2| 30min|m100|0| 1h 20min|m25|2| 136d0Project Rules \ Dead CodeRule
                                            Types with source files stored in the same directory, should be declared in the same namespace|m0|5|

                                            1 issue

                                            • TestClearstreamAPIEndpoint} violates rule 'Types with source files stored in the same directory, should be declared in the same namespace'
                                            |m6|3| 7min|m25|2| 20min|m23|3| 127d1Project Rules \ Source Files OrganizationRule
                                            Types that could be declared as private, nested in a parent type|m0|7|

                                            1 issue

                                            • TestClearstreamAPIEndpoint .DiTemplateList} violates rule 'Types that could be declared as private, nested in a parent type'
                                            |m1|4| 3min 0s|m0|7| 0min 0s|m0|7| 00:00:006Project Rules \ VisibilityRule
                                            Declare types in namespaces|m0|6|

                                            1 issue

                                            • ;namespace.png{anonymous namespace in assembly ClearstreamAPIConnector} violates rule 'Declare types in namespaces'
                                            |m0|5| 2min 0s|m2|4| 2min 0s|m66|1| 1y7Project Rules \ DesignRule
                                            Class with no descendant should be sealed if possible|m66|4|

                                            3 issues

                                            • ;class.pngTestClearstreamAPIEndpoint.Program violates rule 'Class with no descendant should be sealed if possible'
                                            • ;class.pngToken violates rule 'Class with no descendant should be sealed if possible'
                                            • TestClearstreamAPIEndpoint .DiTemplateList} violates rule 'Class with no descendant should be sealed if possible'
                                            |m0|7| 1min 30s|m7|3| 6min|m16|4| 91d4Project Rules \ Object Oriented DesignRule
                                            Avoid public methods not publicly visible|m66|3|

                                            3 issues

                                            |m0|6| 1min 30s|m0|5| 0min 0s|m0|5| 00:00:005Project Rules \ VisibilityRule
                                            ;Ok.png   Code Query:    New Debt and Issues per Rule

                                            No rule matched

                                            ;Ok.png   Code Query:    Debt and Issues per Code Element

                                            15 code containers matched

                                            15 code containersIssuesDebtAnnual InterestBreaking PointFull Name
                                            ;method.pngGetRefreshTokenAsync(Token)|m100|03|

                                            2 issues

                                            |m100|00| 40min|m100|00| 1h 2min|m12|07| 235dTestClearstreamAPIEndpoint.Program .GetRefreshTokenAsync(Token)
                                            ;method.pngGetElibilityTokenAsync()|m0|07|

                                            1 issue

                                            |m74|02| 30min|m32|03| 20min|m28|03| 1y 182dTestClearstreamAPIEndpoint.Program .GetElibilityTokenAsync()
                                            ;method.pngMain(String[])|m0|06|

                                            1 issue

                                            |m74|01| 30min|m32|04| 20min|m28|04| 1y 182dTestClearstreamAPIEndpoint.Program .Main(String[])
                                            ;class.pngToken|m100|01|

                                            2 issues

                                            • ;class.pngToken violates rule 'Class with no descendant should be sealed if possible'
                                            • ;class.pngToken violates rule 'Avoid referencing source file out of the project directory'
                                            |m25|04| 10min|m3|07| 2min 0s|m100|00| 5y 91dToken
                                            ;class.pngProgram|m100|02|

                                            2 issues

                                            |m25|03| 10min|m3|06| 2min 0s|m100|01| 5y 91dTestClearstreamAPIEndpoint.Program
                                            ;class.pngDiTemplate|m0|04|

                                            1 issue

                                            |m24|06| 10min|m0|13| 0min 0s|m0|13| 00:00:00TestClearstreamAPIEndpoint .DiTemplate
                                            ;class.pngLoggingHandler|m0|08|

                                            1 issue

                                            |m24|05| 10min|m0|14| 0min 0s|m0|14| 00:00:00TestClearstreamAPIEndpoint .LoggingHandler
                                            ;method.pngValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)|m0|05|

                                            1 issue

                                            |m24|07| 10min|m16|05| 10min|m19|06| 1yTestClearstreamAPIEndpoint.Program .ValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)
                                            ;method.pngCallClearstreamPlaygroundApiAsyn c (Token)|m0|13|

                                            1 issue

                                            |m24|08| 10min|m45|01| 28min|m6|08| 130dTestClearstreamAPIEndpoint.Program .CallClearstreamPlaygroundApiAsync (Token)
                                            ;namespace.pngTestClearstreamAPIEndpoint|m0|14|

                                            1 issue

                                            • TestClearstreamAPIEndpoint} violates rule 'Types with source files stored in the same directory, should be declared in the same namespace'
                                            |m16|09| 7min|m32|02| 20min|m6|09| 127dTestClearstreamAPIEndpoint
                                            ;class.pngDiTemplateList|m100|00|

                                            2 issues

                                            • TestClearstreamAPIEndpoint .DiTemplateList} violates rule 'Class with no descendant should be sealed if possible'
                                            • TestClearstreamAPIEndpoint .DiTemplateList} violates rule 'Types that could be declared as private, nested in a parent type'
                                            |m7|10| 3min 30s|m3|09| 2min 0s|m33|02| 1y 273dTestClearstreamAPIEndpoint .DiTemplateList
                                            N:anonymous namespace in assembly ClearstreamAPIConnector|m0|09|

                                            1 issue

                                            • ;namespace.png{anonymous namespace in assembly ClearstreamAPIConnector} violates rule 'Declare types in namespaces'
                                            |m3|11| 2min 0s|m3|08| 2min 0s|m19|05| 1y{anonymous namespace} in assembly ClearstreamAPIConnector
                                            ;property-get.pngget_access_token()|m0|10|

                                            1 issue

                                            |m0|14| 0min 30s|m0|12| 0min 0s|m0|12| 00:00:00Token.get_access_token()
                                            ;property-get.pngget_expires_in()|m0|11|

                                            1 issue

                                            |m0|13| 0min 30s|m0|10| 0min 0s|m0|10| 00:00:00Token.get_expires_in()
                                            ;property-get.pngget_refresh_token()|m0|12|

                                            1 issue

                                            |m0|12| 0min 30s|m0|11| 0min 0s|m0|11| 00:00:00Token.get_refresh_token()
                                            ;Ok.png   Code Query:    New Debt and Issues per Code Element

                                            No code element matched

                                            Object Oriented Design

                                            ;Ok.png   Validated Rule:    Avoid interfaces too big

                                            No type matched

                                            ;Ok.png   Validated Rule:    Base class should not use derivatives

                                            No type matched

                                            ;Ok.png   Validated Rule:    Class shouldn't be too deep in inheritance tree

                                            No type matched

                                            ;Warning.png   Rule Violated:    ND1203    Class with no descendant should be sealed if possible

                                            3 types matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            3 types# lines of code (LOC)DebtSeverityFull Name
                                            ;class.pngProgram|m100|0| 172|m0|0| 0min 30s0MediumTestClearstreamAPIEndpoint.Program
                                            ;class.pngToken|m4|1| 8|m0|1| 0min 30s1MediumToken
                                            ;class.pngDiTemplateList|m0|2| 0|m0|2| 0min 30s2MediumTestClearstreamAPIEndpoint .DiTemplateList
                                            ;Ok.png   Validated Rule:    Overrides of Method() should call base.Method()

                                            No method matched

                                            ;Ok.png   Validated Rule:    Do not hide base class methods

                                            No method matched

                                            ;Ok.png   Validated Rule:    A stateless class or structure might be turned into a static type

                                            No type matched

                                            ;Ok.png   Validated Rule:    Non-static classes should be instantiated or turned to static

                                            No type matched

                                            ;Ok.png   Validated Rule:    Methods should be declared static if possible

                                            No method matched

                                            ;Ok.png   Validated Rule:    Constructor should not call a virtual method

                                            No method matched

                                            ;Ok.png   Validated Rule:    Avoid the Singleton pattern

                                            No type matched

                                            ;Ok.png   Validated Rule:    Don't assign static fields from instance methods

                                            No field matched

                                            ;Ok.png   Validated Rule:    Avoid empty interfaces

                                            No type matched

                                            ;Ok.png   Validated Rule:    Avoid types initialization cycles

                                            No method matched

                                            API Breaking Changes

                                            ;Ok.png   Validated Rule:    API Breaking Changes: Types

                                            No type matched

                                            ;Ok.png   Validated Rule:    API Breaking Changes: Methods

                                            No method matched

                                            ;Ok.png   Validated Rule:    API Breaking Changes: Fields

                                            No field matched

                                            ;Ok.png   Validated Rule:    API Breaking Changes: Interfaces and Abstract Classes

                                            No type matched

                                            ;Ok.png   Validated Rule:    Broken serializable types

                                            No type matched

                                            ;Ok.png   Validated Rule:    Avoid changing enumerations Flags status

                                            No type matched

                                            Code Coverage

                                            ;Ok.png   Validated Rule:    Code should be tested

                                            No code container matched

                                            ;Ok.png   Validated Rule:    New Types and Methods should be tested

                                            No code container matched

                                            ;Ok.png   Validated Rule:    Methods refactored should be tested

                                            No method matched

                                            ;Ok.png   Validated Rule:    Assemblies and Namespaces should be tested

                                            No code element parent matched

                                            ;Ok.png   Validated Rule:    Types almost 100% tested should be 100% tested

                                            No type matched

                                            ;Ok.png   Validated Rule:    Namespaces almost 100% tested should be 100% tested

                                            No namespace matched

                                            ;Ok.png   Validated Rule:    Types that used to be 100% covered by tests should still be 100% covered

                                            No method matched

                                            ;Ok.png   Validated Rule:    Types tagged with FullCoveredAttribute should be 100% covered

                                            No method matched

                                            ;Ok.png   Validated Rule:    Types 100% covered should be tagged with FullCoveredAttribute

                                            No type matched

                                            ;Ok.png   Validated Rule:    Methods should have a low C.R.A.P score

                                            No method matched

                                            Dead Code

                                            ;Ok.png   Validated Rule:    Potentially Dead Types

                                            No type matched

                                            ;Warning.png   Rule Violated:    ND1701    Potentially Dead Methods

                                            3 methods matched Formatting: bold✱ means added     ● means code was changed     strike-bold means removed (since baseline)

                                            3 methodsdepthMethodsCallingMeDebtAnnual InterestFull Name
                                            ;method.pngValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)|m0|0| 00no method|m0|0| 10min210minTestClearstreamAPIEndpoint.Program .ValidateRemoteCertificate(Object ,X509Certificate,X509Chain ,SslPolicyErrors)
                                            ;method.pngGetRefreshTokenAsync(Token)|m0|1| 01no method|m0|1| 10min042minTestClearstreamAPIEndpoint.Program .GetRefreshTokenAsync(Token)
                                            ;method.pngCallClearstreamPlaygroundApiAsyn c (Token)|m0|2| 02no method|m0|2| 10min128minTestClearstreamAPIEndpoint.Program .CallClearstreamPlaygroundApiAsync (Token)
                                            ;Ok.png   Validated Rule:    Potentially Dead Fields

                                            No field matched

                                            ;Ok.png   Validated Rule:    Wrong usage of IsNotDeadCodeAttribute

                                            No member matched

                                            Code Diff Summary

                                            » Baseline : Baseline is same code base snapshot.

                                            ;Ok.png   Code Query:    New assemblies
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists assemblies that have been added since the baseline.

                                            No assembly matched

                                            ;Ok.png   Code Query:    Assemblies removed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists assemblies that have been removed since the baseline.

                                            No assembly matched

                                            ;Ok.png   Code Query:    Assemblies where code was changed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists assemblies in which, code has been changed since the baseline.

                                            No assembly matched

                                            ;Ok.png   Code Query:    New namespaces
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists namespaces that have been added since the baseline.

                                            No namespace matched

                                            ;Ok.png   Code Query:    Namespaces removed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists namespaces that have been removed since the baseline.

                                            No namespace matched

                                            ;Ok.png   Code Query:    Namespaces where code was changed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists namespaces in which, code has been changed since the baseline.

                                            No namespace matched

                                            ;Ok.png   Code Query:    New types
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists types that have been added since the baseline.

                                            No type matched

                                            ;Ok.png   Code Query:    Types removed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists types that have been removed since the baseline.

                                            No type matched

                                            ;Ok.png   Code Query:    Types where code was changed

                                            No type matched

                                            ;Ok.png   Code Query:    Heuristic to find types moved from one namespace or assembly to another
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists types moved from one namespace or assembly to another. The heuristic implemented consists in making a join LINQ query on type name (without namespace prefix), applied to the two sets of types added and types removed.

                                            No type matched

                                            ;Ok.png   Code Query:    Types directly using one or several types changed

                                            No type matched

                                            ;Ok.png   Code Query:    Types indirectly using one or several types changed

                                            No type matched

                                            ;Ok.png   Code Query:    New methods
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists methods that have been added since the baseline.

                                            No method matched

                                            ;Ok.png   Code Query:    Methods removed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists methods that have been removed since the baseline.

                                            No method matched

                                            ;Ok.png   Code Query:    Methods where code was changed

                                            No method matched

                                            ;Ok.png   Code Query:    Methods directly calling one or several methods changed

                                            No method matched

                                            ;Ok.png   Code Query:    Methods indirectly calling one or several methods changed

                                            No method matched

                                            ;Ok.png   Code Query:    New fields
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists fields that have been added since the baseline.

                                            No field matched

                                            ;Ok.png   Code Query:    Fields removed
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists fields that have been removed since the baseline.

                                            No field matched

                                            ;Ok.png   Code Query:    Third party types that were not used and that are now used
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists types defined in third-party assemblies, that were not used at baseline time, and that are now used.

                                            No type matched

                                            ;Ok.png   Code Query:    Third party types that were used and that are not used anymore
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists types defined in third-party assemblies, that were used at baseline time, and that are not used anymore.

                                            No type matched

                                            ;Ok.png   Code Query:    Third party methods that were not used and that are now used
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists methods defined in third-party assemblies, that were not used at baseline time, and that are now used.

                                            No method matched

                                            ;Ok.png   Code Query:    Third party methods that were used and that are not used anymore
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists methods defined in third-party assemblies, that were used at baseline time, and that are not used anymore.

                                            No method matched

                                            ;Ok.png   Code Query:    Third party fields that were not used and that are now used
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists fields defined in third-party assemblies, that were not used at baseline time, and that are now used.

                                            No field matched

                                            ;Ok.png   Code Query:    Third party fields that were used and that are not used anymore
                                            • Query Description:

                                            This query is executed only if a baseline for comparison is defined (diff mode).

                                            This code query lists fields defined in third-party assemblies, that were used at baseline time, and that are not used anymore.

                                            No field matched

                                            Assemblies Dependencies

                                            Assembly Depends on Is referenced by
                                            ClearstreamAPIConnector v1.0.0.0System.Runtime v7.0.0.0 ; System.Collections v7.0.0.0 ; System.Net.Http v7.0.0.0 ; System.Console v7.0.0.0 ; System.Security.Cryptography v7.0.0.0 ; System.Net.Primitives v7.0.0.0 ; System.Net.Security v7.0.0.0 ; System.Text.Json v7.0.0.0 ; System.Net.ServicePoint v7.0.0.0 ; System.Net.WebProxy v7.0.0.0 ; -

                                            Assemblies Build Order

                                            1. ClearstreamAPIConnector

                                            Assemblies Build Order

                                            1. ClearstreamAPIConnector

                                            Abstractness versus Instability Diagram

                                            The Abstractness versus Instability Diagram helps to detect which assemblies are potentially painful to maintain (i.e concrete and stable) and which assemblies are potentially useless (i.e abstract and instable).

                                            • Abstractness: If an assembly contains many abstract types (i.e interfaces and abstract classes) and few concrete types, it is considered as abstract.
                                            • Instability: An assembly is considered stable if its types are used by a lot of types from other assemblies. In this context stable means painful to modify.

                                            Online documentation: