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 100 code elements in this report

Does this report gets too large?

Quick Tips

Main
Main \ Rules
Main \ Quality Gates
Main \ Quality Gates \ Quality Gates
Main \ Rules \ Code Smells
Main \ Rules \ Code Smells Regression
Main \ Rules \ Object Oriented Design
Main \ Rules \ Design
Main \ Rules \ Architecture
Main \ Rules \ API Breaking Changes
Main \ Rules \ Code Coverage
Main \ Rules \ Dead Code
Main \ Rules \ Visibility
Main \ Rules \ Immutability
Main \ Rules \ Naming Conventions
Main \ Rules \ Source Files Organization
Main \ Rules \ .NET Framework Usage
Main \ Rules \ .NET Framework Usage \ System
Main \ Rules \ .NET Framework Usage \ System.Collections
Main \ Group of Queries \ Hot Spots
Main \ Group of Queries \ Object Oriented Design
Main \ Group of Queries \ API Breaking Changes
Main \ Group of Queries \ Code Coverage
Main \ Group of Queries \ Dead Code
Main \ Group of Queries \ Code Diff Summary
Main \ Metrics \ Application Statistics
Main \ Metrics \ Assemblies Metrics
Main \ Metrics \ Namespaces Metrics
Main \ Metrics \ Types Metrics
Main \ Assemblies Dependencies
Main \ Namespaces Dependencies
Main \ Types Dependencies
Main \ Build Order
Main \ Analysis Log
Main \ Abstractness vs. Instability
Main \ Trend Charts
ndepend report summary application nameeShopOnWeb v2019 (v1.0.0.0)report build date10-17-2019 11:27:59analysis duration00:11ndepend version 2019.3.0   Professional Developer/Build-Machine Editionbaseline for comparisonCompare with project {eShopOnWeb v2018} most recent analysis result (analysis result obtained on 2019 October - 17 Thursday 11:06)code coverage data Loaded! Code Coverage metrics, Queries and Rules relative to code Coverage, can be used.
Get started.Quick tips.Back to NDepend. The present HTML report is a summary of data gathered by the analysis.
It is recommended to use the NDepend interactive UI capabilities
to make the most of NDepend by mastering all aspects of your code.

Diagrams

.NET Assemblies Dependency Graph
Dependency Graph
View as ?fullscaled
.NET Assemblies Dependency Matrix
Dependency Matrix
View as ?fullscaled
Treemap View
Treemap Metric View
View as ?fullscaled
Abstractness versus Instability
Abstractness vs. Instability

Application Metrics

Note: Further Application Statistics are available.
# Lines of Code
1 607      -462
476   (NotMyCode)      +45
Estimated Dev Effort   50d      -15.61d
# Types
96      -37
3   Assemblies      -1
34   Namespaces      -8
271   Methods      -96
58   Fields      -51
83   Source Files      -21
945   Third-Party Elements      +23
Comment
4.97%      from 3.99%
84   Lines of Comment      -2
Debt
23.09%      from 19.61%
Rating   D   1d 4h effort to reach  C
Debt   11d 4h      -(1d 2h)
Annual Interest   8d 6h      +4d 4h
Breaking Point   15m      -20m
Coverage
32.67%      from 15.95%
   
525   Lines of Code Covered      +195
1 082   Lines of Code Not Covered      -657
0   Lines of Code Uncoverable      no diff
Method Complexity
15   Max      no diff
1.51   Average      +0.083
Quality Gates
Fail7
Warn1+1
Pass3-1
Rules
Critical6
Violated32+2-4
Ok114
Issues
All472+213-413
Blocker0
Critical0
High133+121-9
Medium276+66-390
Low63+26-14
Suppressed0

Quality Gates summary

317
graphHelp Some Quality Gates fail. The build
can be stopped upon quality gate
failure. Online documentation.
graphHelp Quality Gates that measure diff cannot
be run on the baseline. Hence they
have blank trend and baseline value.
NameTrendBaseline ValueValueGroup
warningCritical   Percentage Coverage
okwarningCritical15.95 %warningCritical32.67 %Project Rules \ Quality Gates
warningCritical   Percentage Coverage on New Code
warningCritical47.31 %Project Rules \ Quality Gates
warningCritical   Percentage Coverage on Refactored Code
warningCritical44.65 %Project Rules \ Quality Gates
warning   Blocker Issues
okwarning0 issueswarning0 issuesProject Rules \ Quality Gates
warning   Critical Issues
okwarning0 issueswarning0 issuesProject Rules \ Quality Gates
warningCritical   New Blocker / Critical / High Issues
warningCritical121 issuesProject Rules \ Quality Gates
warningCritical   Critical Rules Violated
warningwarningCritical2 ruleswarningCritical6 rulesProject Rules \ Quality Gates
warning   Percentage Debt
warningwarning19.61 %warning23.09 %Project Rules \ Quality Gates
warning   New Debt since Baseline
warning-1.32 man-daysProject Rules \ Quality Gates
warningCritical   Debt Rating per Namespace
okwarningCritical13 namespaceswarningCritical13 namespacesProject Rules \ Quality Gates
warningCritical   New Annual Interest since Baseline
warningCritical4.54 man-daysProject Rules \ Quality Gates

Rules summary

114326
  • Number of Rules or Queries with Error (syntax error, exception thrown, time-out): 0
  • Number of Rules violated: 38
graphHelp Rules can be checked live at
development-time, from within Visual
Studio. Online documentation.
graphHelp Rules that rely on diff cannot be
run on the baseline. Hence they
have blank # Issues Fixed or Added.
Name# IssuesAddedFixedElementsGroup
warning   Avoid types with too many methods
100 typeProject Rules \ Code Smells
warning   From now, all types added should be 100% covered by tests
15 typesProject Rules \ Code Smells Regression
warning   From now, all methods added should respect basic quality principles
2 methodsProject Rules \ Code Smells Regression
warning   Avoid transforming an immutable type into a mutable one
4 typesProject Rules \ Code Smells Regression
warning   Non-static classes should be instantiated or turned to static
210 typesProject Rules \ Object Oriented Design
warning   Methods should be declared static if possible
1042 methodsProject Rules \ Object Oriented Design
warning   Constructor should not call a virtual method
210 methodsProject Rules \ Object Oriented Design
warning   Avoid empty interfaces
100 typeProject Rules \ Object Oriented Design
warning   Avoid namespaces with few types
1353 namespacesProject Rules \ Design
warning   Nested types should not be visible
1112 typeProject Rules \ Design
warningCritical   Avoid namespaces mutually dependent
210 typesProject Rules \ Architecture
warning   Avoid namespaces dependency cycles
210 namespacesProject Rules \ Architecture
warning   Assemblies with poor cohesion (RelationalCohesion)
101 assemblyProject Rules \ Architecture
warningCritical   API Breaking Changes: Types
9 typesProject Rules \ API Breaking Changes
warningCritical   API Breaking Changes: Methods
15 methodsProject Rules \ API Breaking Changes
warningCritical   API Breaking Changes: Fields
1 fieldProject Rules \ API Breaking Changes
warningCritical   API Breaking Changes: Interfaces and Abstract Classes
3 typesProject Rules \ API Breaking Changes
warning   Code should be tested
23850350 methodsProject Rules \ Code Coverage
warning   New Methods should be tested
40 methodsProject Rules \ Code Coverage
warning   Methods refactored should be tested
4 methodsProject Rules \ Code Coverage
warning   Assemblies Namespaces and Types should be tested
2177 code elements parentProject Rules \ Code Coverage
warning   Types almost 100% tested should be 100% tested
210 typesProject Rules \ Code Coverage
warning   Namespaces almost 100% tested should be 100% tested
110 namespaceProject Rules \ Code Coverage
warning   Types 100% covered should be tagged with FullCoveredAttribute
27141 typesProject Rules \ Code Coverage
warning   Methods should have a low C.R.A.P score
413 methodsProject Rules \ Code Coverage
warning   Potentially Dead Methods
400 methodsProject Rules \ Dead Code
warning   Avoid publicly visible constant fields
323 fieldsProject Rules \ Visibility
warning   Fields should be marked as ReadOnly when possible
100 fieldProject Rules \ Immutability
warning   Do not declare read only mutable reference types
100 fieldProject Rules \ Immutability
warning   Static fields naming convention
448 fieldsProject Rules \ Naming Conventions
warningCritical   Avoid having different types with same name
101 typeProject Rules \ Naming Conventions
warning   Avoid prefixing type name with parent namespace name
431 typesProject Rules \ Naming Conventions
warning   Avoid naming types and namespaces with the same identifier
213 typesProject Rules \ Naming Conventions
warning   Namespace name should correspond to file location
402 typesProject Rules \ Source Files Organization
warning   Types with source files stored in the same directory, should be declared in the same namespace
200 namespacesProject Rules \ Source Files Organization
warning   Types declared in the same namespace, should have their source files stored in the same directory
100 namespaceProject Rules \ Source Files Organization
warning   Do not raise too general exception types
21210 methodsProject Rules \ .NET Framework Usage \ System
warning   Collection properties should be read only
310 methodsProject Rules \ .NET Framework Usage \ System.Collections

Application Statistics

Stat # Occurences Avg StdDev Max
Properties on interfaces 12 interfaces 0.672.218 properties on Microsoft.eShopWeb.ApplicationCore.Interfaces.ISpecification<T>
Methods on interfaces 12 interfaces 2.582.538 methods on Microsoft.eShopWeb.ApplicationCore.Interfaces.ISpecification<T>
Arguments on methods on interfaces 31 methods 1.061.114 arguments on Microsoft.eShopWeb.ApplicationCore.Interfaces.IBasketService.AddItemToBasket(Int32,Int32,Decimal,Int32)
Public properties on classes 109 Classes 2.132.5515 public properties on <>f__AnonymousType7<<Id>j__TPar,<AccessFailedCount>j__TPar,<ConcurrencyStamp>j__TPar,<Email>j__TPar,<EmailConfirmed>j__TPar,<LockoutEnabled>j__TPar,<LockoutEnd>j__TPar,<NormalizedEmail>j__TPar,<NormalizedUserName>j__TPar,<PasswordHash>j__TPar,<PhoneNumber>j__TPar,<PhoneNumberConfirmed>j__TPar,<SecurityStamp>j__TPar,<TwoFactorEnabled>j__TPar,<UserName>j__TPar>
Public methods on classes 109 classes 5.594.2622 public methods on Microsoft.eShopWeb.Web.Controllers.ManageController
Arguments on public methods on classes 609 methods 0.681.2115 arguments on <>f__AnonymousType7<<Id>j__TPar,<AccessFailedCount>j__TPar,<ConcurrencyStamp>j__TPar,<Email>j__TPar,<EmailConfirmed>j__TPar,<LockoutEnabled>j__TPar,<LockoutEnd>j__TPar,<NormalizedEmail>j__TPar,<NormalizedUserName>j__TPar,<PasswordHash>j__TPar,<PhoneNumber>j__TPar,<PhoneNumberConfirmed>j__TPar,<SecurityStamp>j__TPar,<TwoFactorEnabled>j__TPar,<UserName>j__TPar>..ctor(<Id>j__TPar,<AccessFailedCount>j__TPar,<ConcurrencyStamp>j__TPar,<Email>j__TPar,<EmailConfirmed>j__TPar,<LockoutEnabled>j__TPar,<LockoutEnd>j__TPar,<NormalizedEmail>j__TPar,<NormalizedUserName>j__TPar,<PasswordHash>j__TPar,<PhoneNumber>j__TPar,<PhoneNumberConfirmed>j__TPar,<SecurityStamp>j__TPar,<TwoFactorEnabled>j__TPar,<UserName>j__TPar)
IL instructions in non-abstract methods 689 methods 41.88108.541332 IL instructions in Microsoft.eShopWeb.Infrastructure.Identity.Migrations.InitialIdentityModel.Up(MigrationBuilder)
Cyclomatic complexity on non abstract Methods 689 Methods 3.135.41 CC = 31 for <>f__AnonymousType7<<Id>j__TPar,<AccessFailedCount>j__TPar,<ConcurrencyStamp>j__TPar,<Email>j__TPar,<EmailConfirmed>j__TPar,<LockoutEnabled>j__TPar,<LockoutEnd>j__TPar,<NormalizedEmail>j__TPar,<NormalizedUserName>j__TPar,<PasswordHash>j__TPar,<PhoneNumber>j__TPar,<PhoneNumberConfirmed>j__TPar,<SecurityStamp>j__TPar,<TwoFactorEnabled>j__TPar,<UserName>j__TPar>.ToString()

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.
Assemblies # lines of code# IL instruction # Types # Abstract Types # lines of comment% Comment% CoverageAfferent CouplingEfferent CouplingRelational CohesionInstabilityAbstractnessDistance
ApplicationCore v1.0.0.022824173511218.4369.317151.910.470.310.15
Infrastructure v1.0.0.057512342330203.3615.488940.790.9200.06
Web v1.0.0.080414099532435.0834.5802731.1710.040.03

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
BaseEntity25.672110023100170Microsoft.eShopWeb.ApplicationCore .Entities
ISpecification<T>10.11-------121Microsoft.eShopWeb.ApplicationCore .Interfaces
Address5.17176500121210070Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
IEmailSender3.86-------40Microsoft.eShopWeb.ApplicationCore .Interfaces
IAsyncRepository<T>2.99-------91Microsoft.eShopWeb.ApplicationCore .Interfaces
CatalogItemOrdered2.85146016.678810043Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
Order2.7126110925.71111396.1567Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
IAggregateRoot2.69-------30Microsoft.eShopWeb.ApplicationCore .Interfaces
IUriComposer2.29-------70Microsoft.eShopWeb.ApplicationCore .Interfaces
Basket2.2611860081010064Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
BasketItem2.21625006710051Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
CatalogType2211002310041Microsoft.eShopWeb.ApplicationCore .Entities
CatalogBrand2211002310041Microsoft.eShopWeb.ApplicationCore .Entities
OrderItem1.77114318.338810062Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
ApplicationUser1.7704---1-102Microsoft.eShopWeb.Infrastructure .Identity
CatalogSettings1.77211002310020Microsoft.eShopWeb
BasketViewModel1.659540091088.89514Microsoft.eShopWeb.Web.Pages.Basket
CatalogItem1.49166000161710073Microsoft.eShopWeb.ApplicationCore .Entities
BasketNotFoundException1.3442900442510Microsoft.eShopWeb.ApplicationCore .Exceptions
BaseSpecification<T>1.27251010019198042Microsoft.eShopWeb.ApplicationCore .Specifications
CatalogIndexViewModel1.251246001213100510Microsoft.eShopWeb.Web.ViewModels
CatalogContext0.944865100222295.83536Microsoft.eShopWeb.Infrastructure.Data
IAppLogger<T>0.93-------51Microsoft.eShopWeb.ApplicationCore .Interfaces
CatalogItemViewModel0.7832008910037Microsoft.eShopWeb.Web.ViewModels
PaymentMethod0.68625114.2967011Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
ICatalogViewModelService0.67-------56Microsoft.eShopWeb.Web.Services
BasketItemViewModel0.65145300141578.5737Microsoft.eShopWeb.Web.Pages.Basket
PaginationInfoViewModel0.63124600121310026Microsoft.eShopWeb.Web.ViewModels
BasketGuards0.6121100225023Ardalis.GuardClauses
<>f__AnonymousType2<<userId>j__TPar, <code>j__TPar>0.610104---12-112
IBasketService0.59-------50Microsoft.eShopWeb.ApplicationCore .Interfaces
OrderItemViewModel0.511246001213027Microsoft.eShopWeb.Web.ViewModels
IBasketViewModelService0.51-------53Microsoft.eShopWeb.Web.Interfaces
IOrderService0.49-------31Microsoft.eShopWeb.ApplicationCore .Interfaces
BasketWithItemsSpecification0.4641100022100213Microsoft.eShopWeb.ApplicationCore .Specifications
CustomerOrdersWithItemsSpecification+<>c0.4207---2-12Microsoft.eShopWeb.ApplicationCore .Specifications
BasketWithItemsSpecification+<>c0.4107---2-12Microsoft.eShopWeb.ApplicationCore .Specifications
IOrderRepository0.41-------32Microsoft.eShopWeb.ApplicationCore .Interfaces
SpecificationEvaluator<T>0.4114106526.3271064.2917Microsoft.eShopWeb.Infrastructure.Data
EfRepository<T>0.341476900972100213Microsoft.eShopWeb.Infrastructure.Data
OrderRepository+<>c0.3207---2-12Microsoft.eShopWeb.Infrastructure.Data
BaseApiController0.2904---1-15Microsoft.eShopWeb.Web.Controllers.Api
CatalogViewModelService0.293988312.51258100248Microsoft.eShopWeb.Web.Services
AppIdentityDbContextSeed0.2621100011110014Microsoft.eShopWeb.Infrastructure .Identity
Startup0.261019522217.89307161.391150Microsoft.eShopWeb.Web
CatalogContextSeed0.261982829.5293363.16114Microsoft.eShopWeb.Infrastructure.Data
CatalogContext+<>c0.2607---2-12Microsoft.eShopWeb.Infrastructure.Data
<>f__AnonymousType9<<UserId>j__TPar, <LoginProvider>j__TPar,<Name>j__TPar, <Value>j__TPar>0.260190---18-11
<>f__AnonymousType8<<Id>j__TPar, <ConcurrencyStamp>j__TPar,<Name>j__TPar, <NormalizedName>j__TPar>0.260190---18-11
<>f__AnonymousType7<<Id>j__TPar, <AccessFailedCount>j__TPar, <ConcurrencyStamp>j__TPar,<Email>j__TPar ,<EmailConfirmed>j__TPar,<LockoutEnabled >j__TPar,<LockoutEnd>j__TPar, <NormalizedEmail>j__TPar, <NormalizedUserName>j__TPar, <PasswordHash>j__TPar,<PhoneNumber >j__TPar,<PhoneNumberConfirmed>j__TPar, <SecurityStamp>j__TPar,<TwoFactorEnabled >j__TPar,<UserName>j__TPar>0.260663---51-11
<>f__AnonymousType14<<Id>j__TPar, <ClaimType>j__TPar,<ClaimValue>j__TPar, <RoleId>j__TPar>0.260190---18-11
<>f__AnonymousType10<<UserId>j__TPar, <LoginProvider>j__TPar,<Name>j__TPar>0.260147---15-11
<>f__AnonymousType13<<LoginProvider >j__TPar,<ProviderKey>j__TPar>0.260104---12-11
<>f__AnonymousType15<<UserId>j__TPar, <RoleId>j__TPar>0.260104---12-11
<>f__AnonymousType11<<Id>j__TPar, <ClaimType>j__TPar,<ClaimValue>j__TPar, <UserId>j__TPar>0.260190---18-11
<>f__AnonymousType12<<LoginProvider >j__TPar,<ProviderKey>j__TPar, <ProviderDisplayName>j__TPar,<UserId >j__TPar>0.260190---18-11
<>f__AnonymousType0<<Id>j__TPar,<BuyerId >j__TPar>0.250104---12-11
<>f__AnonymousType3<<Id>j__TPar,<BuyerId >j__TPar,<OrderDate>j__TPar, <ShipToAddress_City>j__TPar, <ShipToAddress_Country>j__TPar, <ShipToAddress_State>j__TPar, <ShipToAddress_Street>j__TPar, <ShipToAddress_ZipCode>j__TPar>0.250362---30-11
<>f__AnonymousType5<<Id>j__TPar, <CatalogBrandId>j__TPar,<CatalogTypeId >j__TPar,<Description>j__TPar,<Name >j__TPar,<PictureUri>j__TPar,<Price >j__TPar>0.250319---27-11
<>f__AnonymousType4<<Id>j__TPar, <BasketId>j__TPar,<CatalogItemId>j__TPar ,<Quantity>j__TPar,<UnitPrice>j__TPar>0.250233---21-11
<>f__AnonymousType6<<Id>j__TPar,<OrderId >j__TPar,<UnitPrice>j__TPar,<Units >j__TPar,<ItemOrdered_CatalogItemId >j__TPar,<ItemOrdered_PictureUri>j__TPar ,<ItemOrdered_ProductName>j__TPar>0.250319---27-11
<>f__AnonymousType1<<Id>j__TPar,<Brand >j__TPar>0.250104---12-11
<>f__AnonymousType2<<Id>j__TPar,<Type >j__TPar>0.250104---12-11
BasketComponentViewModel0.24211002310015Microsoft.eShopWeb.Web.ViewModels
CustomerOrdersWithItemsSpecification0.2235900110112Microsoft.eShopWeb.ApplicationCore .Specifications
OrderViewModel0.2213490013130111Microsoft.eShopWeb.Web.ViewModels
LoginModel+InputModel0.2262500670110Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account
<>f__AnonymousType0<<ReturnUrl>j__TPar, <RememberMe>j__TPar>0.220104---12-112
CatalogFilterPaginatedSpecification0.222910011100111Microsoft.eShopWeb.ApplicationCore .Specifications
CatalogFilterSpecification0.221860011100111Microsoft.eShopWeb.ApplicationCore .Specifications
LoginViewModel0.2625006783.33110Microsoft.eShopWeb.Web.ViewModels .Account
ResetPasswordViewModel0.283200890111Microsoft.eShopWeb.Web.ViewModels .Account
LoginWith2faViewModel0.262500670110Microsoft.eShopWeb.Web.ViewModels .Account
<>f__AnonymousType1<<returnUrl>j__TPar, <RememberMe>j__TPar>0.20104---12-112
RegisterViewModel0.262500670111Microsoft.eShopWeb.Web.ViewModels .Account
ExternalLoginsViewModel0.198320089019Microsoft.eShopWeb.Web.ViewModels.Manage
ChangePasswordViewModel0.1983200890110Microsoft.eShopWeb.Web.ViewModels.Manage
EmailSenderExtensions0.191150011017Microsoft.eShopWeb.Web.Services
EnableAuthenticatorViewModel0.1962500670110Microsoft.eShopWeb.Web.ViewModels.Manage
SetPasswordViewModel0.1962500670110Microsoft.eShopWeb.Web.ViewModels.Manage
TwoFactorAuthenticationViewModel0.196250067016Microsoft.eShopWeb.Web.ViewModels.Manage
RemoveLoginViewModel0.194180045015Microsoft.eShopWeb.Web.ViewModels.Manage
GenerateRecoveryCodesViewModel0.192110023016Microsoft.eShopWeb.Web.ViewModels.Manage
IndexViewModel0.1910390010110110Microsoft.eShopWeb.Web.ViewModels.Manage
UrlHelperExtensions0.192260022017Microsoft.AspNetCore.Mvc
<>f__AnonymousType3<<status>j__TPar, <errors>j__TPar>0.170104---12-112
OrderRepository0.172680022100119Microsoft.eShopWeb.Infrastructure.Data
ApiHealthCheck0.1712233003150131Microsoft.eShopWeb.Web.HealthChecks
<>f__AnonymousType4<<key>j__TPar,<value >j__TPar>0.170104---12-112
OrderService0.1717319003240113Microsoft.eShopWeb.ApplicationCore .Services
BasketService0.1744102800128240.91115Microsoft.eShopWeb.ApplicationCore .Services
HomePageHealthCheck0.1710212003150126Microsoft.eShopWeb.Web.HealthChecks
CachedCatalogViewModelService0.17177430086364.71128Microsoft.eShopWeb.Web.Services
BasketViewModelService0.172870200755100134Microsoft.eShopWeb.Web.Services
EmailSender0.1711015012011Microsoft.eShopWeb.Infrastructure .Services
AppIdentityDbContext0.1721236022100112Microsoft.eShopWeb.Infrastructure .Identity
LoggerAdapter<T>0.1742500335017Microsoft.eShopWeb.Infrastructure .Logging
SlugifyParameterTransformer0.173251252466.6717Microsoft.eShopWeb.Web
UriComposer0.17318002210012Microsoft.eShopWeb.ApplicationCore .Services
CatalogController0.15513600311100022Microsoft.eShopWeb.Web.Controllers.Api
IdentityHostingStartup0.15120002410009Microsoft.eShopWeb.Web.Areas.Identity
Buyer0.15833111.1155006Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
IIdentityParser<T>0.15-------01Microsoft.eShopWeb.ApplicationCore .Interfaces
ManageController0.15189464242.07693250078Microsoft.eShopWeb.Web.Controllers
OrderController0.1515457008320045Microsoft.eShopWeb.Web.Controllers
LoginModel0.1531446411.43183941.94046Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account
AccountController0.1577147844.943311518.18063Microsoft.eShopWeb.Web.Controllers
Constants0.1500---0-03Microsoft.eShopWeb.Web
ErrorModel0.154350058009Microsoft.eShopWeb.Web.Pages
IndexModel0.15613700513100019Microsoft.eShopWeb.Web.Pages
Program0.15136900367.69029Microsoft.eShopWeb.Web
InitialIdentityModel0.1511519830028540030Microsoft.eShopWeb.Infrastructure .Identity.Migrations
ManageNavPages0.151251001213008Microsoft.eShopWeb.Web.Views.Manage
AppIdentityDbContextModelSnapshot0.15756140012240011Microsoft.eShopWeb.Infrastructure .Identity.Migrations
CheckoutModel0.15275190010420042Microsoft.eShopWeb.Web.Pages.Basket
IndexModel0.153176100126777.42042Microsoft.eShopWeb.Web.Pages.Basket
CatalogContextModelSnapshot0.15756820014280012Microsoft.eShopWeb.Infrastructure.Data .Migrations
AddExtraConstraints0.158711300016300016Microsoft.eShopWeb.Infrastructure.Data .Migrations
PrivacyModel0.15060-12002Microsoft.eShopWeb.Web.Pages
Basket0.15163510083187.5034Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent
Initial0.1511718230030580031Microsoft.eShopWeb.Infrastructure.Data .Migrations


  

Types Metrics : Code Members and Inheritance

Type Name # Instance Methods Nb Static Methods Nb Properties # Fields# Children ClassesDepth Of Inheritance Tree Type Namespace
BaseEntity301190Microsoft.eShopWeb.ApplicationCore .Entities
ISpecification<T>8080--Microsoft.eShopWeb.ApplicationCore .Interfaces
Address1205500Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
IEmailSender1000--Microsoft.eShopWeb.ApplicationCore .Interfaces
IAsyncRepository<T>7000--Microsoft.eShopWeb.ApplicationCore .Interfaces
CatalogItemOrdered803300Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
Order1004401Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
IAggregateRoot0000--Microsoft.eShopWeb.ApplicationCore .Interfaces
IUriComposer1000--Microsoft.eShopWeb.ApplicationCore .Interfaces
Basket502201Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
BasketItem703301Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
CatalogType301101Microsoft.eShopWeb.ApplicationCore .Entities
CatalogBrand301101Microsoft.eShopWeb.ApplicationCore .Entities
OrderItem803301Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
ApplicationUser100002Microsoft.eShopWeb.Infrastructure .Identity
CatalogSettings301100Microsoft.eShopWeb
BasketViewModel803301Microsoft.eShopWeb.Web.Pages.Basket
CatalogItem1708801Microsoft.eShopWeb.ApplicationCore .Entities
BasketNotFoundException400000Microsoft.eShopWeb.ApplicationCore .Exceptions
BaseSpecification<T>1908840Microsoft.eShopWeb.ApplicationCore .Specifications
CatalogIndexViewModel1306601Microsoft.eShopWeb.Web.ViewModels
CatalogContext2206601Microsoft.eShopWeb.Infrastructure.Data
IAppLogger<T>2000--Microsoft.eShopWeb.ApplicationCore .Interfaces
CatalogItemViewModel904401Microsoft.eShopWeb.Web.ViewModels
PaymentMethod703301Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
ICatalogViewModelService3000--Microsoft.eShopWeb.Web.Services
BasketItemViewModel1507701Microsoft.eShopWeb.Web.Pages.Basket
PaginationInfoViewModel1306601Microsoft.eShopWeb.Web.ViewModels
BasketGuards010000Ardalis.GuardClauses
<>f__AnonymousType2<<userId>j__TPar, <code>j__TPar>602201
IBasketService5000--Microsoft.eShopWeb.ApplicationCore .Interfaces
OrderItemViewModel1306601Microsoft.eShopWeb.Web.ViewModels
IBasketViewModelService1000--Microsoft.eShopWeb.Web.Interfaces
IOrderService1000--Microsoft.eShopWeb.ApplicationCore .Interfaces
BasketWithItemsSpecification200001Microsoft.eShopWeb.ApplicationCore .Specifications
CustomerOrdersWithItemsSpecification+<>c110100Microsoft.eShopWeb.ApplicationCore .Specifications
BasketWithItemsSpecification+<>c110100Microsoft.eShopWeb.ApplicationCore .Specifications
IOrderRepository1000--Microsoft.eShopWeb.ApplicationCore .Interfaces
SpecificationEvaluator<T>110000Microsoft.eShopWeb.Infrastructure.Data
EfRepository<T>900110Microsoft.eShopWeb.Infrastructure.Data
OrderRepository+<>c110100Microsoft.eShopWeb.Infrastructure.Data
BaseApiController100012Microsoft.eShopWeb.Web.Controllers.Api
CatalogViewModelService400501Microsoft.eShopWeb.Web.Services
AppIdentityDbContextSeed110000Microsoft.eShopWeb.Infrastructure .Identity
Startup821201Microsoft.eShopWeb.Web
CatalogContextSeed140000Microsoft.eShopWeb.Infrastructure.Data
CatalogContext+<>c110100Microsoft.eShopWeb.Infrastructure.Data
<>f__AnonymousType9<<UserId>j__TPar, <LoginProvider>j__TPar,<Name>j__TPar, <Value>j__TPar>804400
<>f__AnonymousType8<<Id>j__TPar, <ConcurrencyStamp>j__TPar,<Name>j__TPar, <NormalizedName>j__TPar>804400
<>f__AnonymousType7<<Id>j__TPar, <AccessFailedCount>j__TPar, <ConcurrencyStamp>j__TPar,<Email>j__TPar ,<EmailConfirmed>j__TPar,<LockoutEnabled >j__TPar,<LockoutEnd>j__TPar, <NormalizedEmail>j__TPar, <NormalizedUserName>j__TPar, <PasswordHash>j__TPar,<PhoneNumber >j__TPar,<PhoneNumberConfirmed>j__TPar, <SecurityStamp>j__TPar,<TwoFactorEnabled >j__TPar,<UserName>j__TPar>190151500
<>f__AnonymousType14<<Id>j__TPar, <ClaimType>j__TPar,<ClaimValue>j__TPar, <RoleId>j__TPar>804400
<>f__AnonymousType10<<UserId>j__TPar, <LoginProvider>j__TPar,<Name>j__TPar>703300
<>f__AnonymousType13<<LoginProvider >j__TPar,<ProviderKey>j__TPar>602200
<>f__AnonymousType15<<UserId>j__TPar, <RoleId>j__TPar>602200
<>f__AnonymousType11<<Id>j__TPar, <ClaimType>j__TPar,<ClaimValue>j__TPar, <UserId>j__TPar>804400
<>f__AnonymousType12<<LoginProvider >j__TPar,<ProviderKey>j__TPar, <ProviderDisplayName>j__TPar,<UserId >j__TPar>804400
<>f__AnonymousType0<<Id>j__TPar,<BuyerId >j__TPar>602200
<>f__AnonymousType3<<Id>j__TPar,<BuyerId >j__TPar,<OrderDate>j__TPar, <ShipToAddress_City>j__TPar, <ShipToAddress_Country>j__TPar, <ShipToAddress_State>j__TPar, <ShipToAddress_Street>j__TPar, <ShipToAddress_ZipCode>j__TPar>1208800
<>f__AnonymousType5<<Id>j__TPar, <CatalogBrandId>j__TPar,<CatalogTypeId >j__TPar,<Description>j__TPar,<Name >j__TPar,<PictureUri>j__TPar,<Price >j__TPar>1107700
<>f__AnonymousType4<<Id>j__TPar, <BasketId>j__TPar,<CatalogItemId>j__TPar ,<Quantity>j__TPar,<UnitPrice>j__TPar>905500
<>f__AnonymousType6<<Id>j__TPar,<OrderId >j__TPar,<UnitPrice>j__TPar,<Units >j__TPar,<ItemOrdered_CatalogItemId >j__TPar,<ItemOrdered_PictureUri>j__TPar ,<ItemOrdered_ProductName>j__TPar>1107700
<>f__AnonymousType1<<Id>j__TPar,<Brand >j__TPar>602200
<>f__AnonymousType2<<Id>j__TPar,<Type >j__TPar>602200
BasketComponentViewModel301101Microsoft.eShopWeb.Web.ViewModels
CustomerOrdersWithItemsSpecification100001Microsoft.eShopWeb.ApplicationCore .Specifications
OrderViewModel1306601Microsoft.eShopWeb.Web.ViewModels
LoginModel+InputModel703301Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account
<>f__AnonymousType0<<ReturnUrl>j__TPar, <RememberMe>j__TPar>602201
CatalogFilterPaginatedSpecification100001Microsoft.eShopWeb.ApplicationCore .Specifications
CatalogFilterSpecification100001Microsoft.eShopWeb.ApplicationCore .Specifications
LoginViewModel703301Microsoft.eShopWeb.Web.ViewModels .Account
ResetPasswordViewModel904401Microsoft.eShopWeb.Web.ViewModels .Account
LoginWith2faViewModel703301Microsoft.eShopWeb.Web.ViewModels .Account
<>f__AnonymousType1<<returnUrl>j__TPar, <RememberMe>j__TPar>602201
RegisterViewModel703301Microsoft.eShopWeb.Web.ViewModels .Account
ExternalLoginsViewModel904401Microsoft.eShopWeb.Web.ViewModels.Manage
ChangePasswordViewModel904401Microsoft.eShopWeb.Web.ViewModels.Manage
EmailSenderExtensions010001Microsoft.eShopWeb.Web.Services
EnableAuthenticatorViewModel703301Microsoft.eShopWeb.Web.ViewModels.Manage
SetPasswordViewModel703301Microsoft.eShopWeb.Web.ViewModels.Manage
TwoFactorAuthenticationViewModel703301Microsoft.eShopWeb.Web.ViewModels.Manage
RemoveLoginViewModel502201Microsoft.eShopWeb.Web.ViewModels.Manage
GenerateRecoveryCodesViewModel301101Microsoft.eShopWeb.Web.ViewModels.Manage
IndexViewModel1105501Microsoft.eShopWeb.Web.ViewModels.Manage
UrlHelperExtensions020001Microsoft.AspNetCore.Mvc
<>f__AnonymousType3<<status>j__TPar, <errors>j__TPar>602201
OrderRepository200001Microsoft.eShopWeb.Infrastructure.Data
ApiHealthCheck200201Microsoft.eShopWeb.Web.HealthChecks
<>f__AnonymousType4<<key>j__TPar,<value >j__TPar>602201
OrderService200300Microsoft.eShopWeb.ApplicationCore .Services
BasketService600400Microsoft.eShopWeb.ApplicationCore .Services
HomePageHealthCheck200101Microsoft.eShopWeb.Web.HealthChecks
CachedCatalogViewModelService410601Microsoft.eShopWeb.Web.Services
BasketViewModelService500301Microsoft.eShopWeb.Web.Services
EmailSender200000Microsoft.eShopWeb.Infrastructure .Services
AppIdentityDbContext200001Microsoft.eShopWeb.Infrastructure .Identity
LoggerAdapter<T>300100Microsoft.eShopWeb.Infrastructure .Logging
SlugifyParameterTransformer200001Microsoft.eShopWeb.Web
UriComposer200100Microsoft.eShopWeb.ApplicationCore .Services
CatalogController200103Microsoft.eShopWeb.Web.Controllers.Api
IdentityHostingStartup200001Microsoft.eShopWeb.Web.Areas.Identity
Buyer502201Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
IIdentityParser<T>1000--Microsoft.eShopWeb.ApplicationCore .Interfaces
ManageController2501702Microsoft.eShopWeb.Web.Controllers
OrderController300102Microsoft.eShopWeb.Web.Controllers
LoginModel1104601Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account
AccountController1300402Microsoft.eShopWeb.Web.Controllers
Constants000301Microsoft.eShopWeb.Web
ErrorModel502101Microsoft.eShopWeb.Web.Pages
IndexModel401201Microsoft.eShopWeb.Web.Pages
Program120001Microsoft.eShopWeb.Web
InitialIdentityModel400001Microsoft.eShopWeb.Infrastructure .Identity.Migrations
ManageNavPages0115001Microsoft.eShopWeb.Web.Views.Manage
AppIdentityDbContextModelSnapshot200001Microsoft.eShopWeb.Infrastructure .Identity.Migrations
CheckoutModel701701Microsoft.eShopWeb.Web.Pages.Basket
IndexModel801701Microsoft.eShopWeb.Web.Pages.Basket
CatalogContextModelSnapshot200001Microsoft.eShopWeb.Infrastructure.Data .Migrations
AddExtraConstraints400001Microsoft.eShopWeb.Infrastructure.Data .Migrations
PrivacyModel200001Microsoft.eShopWeb.Web.Pages
Basket400201Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent
Initial400001Microsoft.eShopWeb.Infrastructure.Data .Migrations


  

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
BaseEntity000Microsoft.eShopWeb.ApplicationCore .Entities
ISpecification<T>--0Microsoft.eShopWeb.ApplicationCore .Interfaces
Address000Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
IEmailSender--0Microsoft.eShopWeb.ApplicationCore .Interfaces
IAsyncRepository<T>--0Microsoft.eShopWeb.ApplicationCore .Interfaces
CatalogItemOrdered003Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
Order006Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
IAggregateRoot--0Microsoft.eShopWeb.ApplicationCore .Interfaces
IUriComposer--0Microsoft.eShopWeb.ApplicationCore .Interfaces
Basket009Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
BasketItem001Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
CatalogType001Microsoft.eShopWeb.ApplicationCore .Entities
CatalogBrand001Microsoft.eShopWeb.ApplicationCore .Entities
OrderItem001Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
ApplicationUser001Microsoft.eShopWeb.Infrastructure .Identity
CatalogSettings000Microsoft.eShopWeb
BasketViewModel009Microsoft.eShopWeb.Web.Pages.Basket
CatalogItem001Microsoft.eShopWeb.ApplicationCore .Entities
BasketNotFoundException000Microsoft.eShopWeb.ApplicationCore .Exceptions
BaseSpecification<T>000Microsoft.eShopWeb.ApplicationCore .Specifications
CatalogIndexViewModel001Microsoft.eShopWeb.Web.ViewModels
CatalogContext0038Microsoft.eShopWeb.Infrastructure.Data
IAppLogger<T>--0Microsoft.eShopWeb.ApplicationCore .Interfaces
CatalogItemViewModel001Microsoft.eShopWeb.Web.ViewModels
PaymentMethod001Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
ICatalogViewModelService--0Microsoft.eShopWeb.Web.Services
BasketItemViewModel001Microsoft.eShopWeb.Web.Pages.Basket
PaginationInfoViewModel001Microsoft.eShopWeb.Web.ViewModels
BasketGuards001Ardalis.GuardClauses
<>f__AnonymousType2<<userId>j__TPar, <code>j__TPar>006
IBasketService--0Microsoft.eShopWeb.ApplicationCore .Interfaces
OrderItemViewModel001Microsoft.eShopWeb.Web.ViewModels
IBasketViewModelService--0Microsoft.eShopWeb.Web.Interfaces
IOrderService--0Microsoft.eShopWeb.ApplicationCore .Interfaces
BasketWithItemsSpecification0011Microsoft.eShopWeb.ApplicationCore .Specifications
CustomerOrdersWithItemsSpecification+<>c000Microsoft.eShopWeb.ApplicationCore .Specifications
BasketWithItemsSpecification+<>c000Microsoft.eShopWeb.ApplicationCore .Specifications
IOrderRepository--0Microsoft.eShopWeb.ApplicationCore .Interfaces
SpecificationEvaluator<T>0016Microsoft.eShopWeb.Infrastructure.Data
EfRepository<T>0.220.2512Microsoft.eShopWeb.Infrastructure.Data
OrderRepository+<>c000Microsoft.eShopWeb.Infrastructure.Data
BaseApiController001Microsoft.eShopWeb.Web.Controllers.Api
CatalogViewModelService0.40.5369Microsoft.eShopWeb.Web.Services
AppIdentityDbContextSeed004Microsoft.eShopWeb.Infrastructure .Identity
Startup0.780.88123Microsoft.eShopWeb.Web
CatalogContextSeed0019Microsoft.eShopWeb.Infrastructure.Data
CatalogContext+<>c000Microsoft.eShopWeb.Infrastructure.Data
<>f__AnonymousType9<<UserId>j__TPar, <LoginProvider>j__TPar,<Name>j__TPar, <Value>j__TPar>000
<>f__AnonymousType8<<Id>j__TPar, <ConcurrencyStamp>j__TPar,<Name>j__TPar, <NormalizedName>j__TPar>000
<>f__AnonymousType7<<Id>j__TPar, <AccessFailedCount>j__TPar, <ConcurrencyStamp>j__TPar,<Email>j__TPar ,<EmailConfirmed>j__TPar,<LockoutEnabled >j__TPar,<LockoutEnd>j__TPar, <NormalizedEmail>j__TPar, <NormalizedUserName>j__TPar, <PasswordHash>j__TPar,<PhoneNumber >j__TPar,<PhoneNumberConfirmed>j__TPar, <SecurityStamp>j__TPar,<TwoFactorEnabled >j__TPar,<UserName>j__TPar>000
<>f__AnonymousType14<<Id>j__TPar, <ClaimType>j__TPar,<ClaimValue>j__TPar, <RoleId>j__TPar>000
<>f__AnonymousType10<<UserId>j__TPar, <LoginProvider>j__TPar,<Name>j__TPar>000
<>f__AnonymousType13<<LoginProvider >j__TPar,<ProviderKey>j__TPar>000
<>f__AnonymousType15<<UserId>j__TPar, <RoleId>j__TPar>000
<>f__AnonymousType11<<Id>j__TPar, <ClaimType>j__TPar,<ClaimValue>j__TPar, <UserId>j__TPar>000
<>f__AnonymousType12<<LoginProvider >j__TPar,<ProviderKey>j__TPar, <ProviderDisplayName>j__TPar,<UserId >j__TPar>000
<>f__AnonymousType0<<Id>j__TPar,<BuyerId >j__TPar>000
<>f__AnonymousType3<<Id>j__TPar,<BuyerId >j__TPar,<OrderDate>j__TPar, <ShipToAddress_City>j__TPar, <ShipToAddress_Country>j__TPar, <ShipToAddress_State>j__TPar, <ShipToAddress_Street>j__TPar, <ShipToAddress_ZipCode>j__TPar>000
<>f__AnonymousType5<<Id>j__TPar, <CatalogBrandId>j__TPar,<CatalogTypeId >j__TPar,<Description>j__TPar,<Name >j__TPar,<PictureUri>j__TPar,<Price >j__TPar>000
<>f__AnonymousType4<<Id>j__TPar, <BasketId>j__TPar,<CatalogItemId>j__TPar ,<Quantity>j__TPar,<UnitPrice>j__TPar>000
<>f__AnonymousType6<<Id>j__TPar,<OrderId >j__TPar,<UnitPrice>j__TPar,<Units >j__TPar,<ItemOrdered_CatalogItemId >j__TPar,<ItemOrdered_PictureUri>j__TPar ,<ItemOrdered_ProductName>j__TPar>000
<>f__AnonymousType1<<Id>j__TPar,<Brand >j__TPar>000
<>f__AnonymousType2<<Id>j__TPar,<Type >j__TPar>000
BasketComponentViewModel001Microsoft.eShopWeb.Web.ViewModels
CustomerOrdersWithItemsSpecification0011Microsoft.eShopWeb.ApplicationCore .Specifications
OrderViewModel002Microsoft.eShopWeb.Web.ViewModels
LoginModel+InputModel001Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account
<>f__AnonymousType0<<ReturnUrl>j__TPar, <RememberMe>j__TPar>006
CatalogFilterPaginatedSpecification0014Microsoft.eShopWeb.ApplicationCore .Specifications
CatalogFilterSpecification0013Microsoft.eShopWeb.ApplicationCore .Specifications
LoginViewModel001Microsoft.eShopWeb.Web.ViewModels .Account
ResetPasswordViewModel001Microsoft.eShopWeb.Web.ViewModels .Account
LoginWith2faViewModel001Microsoft.eShopWeb.Web.ViewModels .Account
<>f__AnonymousType1<<returnUrl>j__TPar, <RememberMe>j__TPar>006
RegisterViewModel001Microsoft.eShopWeb.Web.ViewModels .Account
ExternalLoginsViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
ChangePasswordViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
EmailSenderExtensions004Microsoft.eShopWeb.Web.Services
EnableAuthenticatorViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
SetPasswordViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
TwoFactorAuthenticationViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
RemoveLoginViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
GenerateRecoveryCodesViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
IndexViewModel001Microsoft.eShopWeb.Web.ViewModels.Manage
UrlHelperExtensions002Microsoft.AspNetCore.Mvc
<>f__AnonymousType3<<status>j__TPar, <errors>j__TPar>006
OrderRepository0014Microsoft.eShopWeb.Infrastructure.Data
ApiHealthCheck0024Microsoft.eShopWeb.Web.HealthChecks
<>f__AnonymousType4<<key>j__TPar,<value >j__TPar>006
OrderService0015Microsoft.eShopWeb.ApplicationCore .Services
BasketService0.50.619Microsoft.eShopWeb.ApplicationCore .Services
HomePageHealthCheck0023Microsoft.eShopWeb.Web.HealthChecks
CachedCatalogViewModelService0.20.2519Microsoft.eShopWeb.Web.Services
BasketViewModelService0.530.6743Microsoft.eShopWeb.Web.Services
EmailSender000Microsoft.eShopWeb.Infrastructure .Services
AppIdentityDbContext002Microsoft.eShopWeb.Infrastructure .Identity
LoggerAdapter<T>003Microsoft.eShopWeb.Infrastructure .Logging
SlugifyParameterTransformer004Microsoft.eShopWeb.Web
UriComposer001Microsoft.eShopWeb.ApplicationCore .Services
CatalogController0014Microsoft.eShopWeb.Web.Controllers.Api
IdentityHostingStartup003Microsoft.eShopWeb.Web.Areas.Identity
Buyer0.330.53Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
IIdentityParser<T>--0Microsoft.eShopWeb.ApplicationCore .Interfaces
ManageController0.690.72126Microsoft.eShopWeb.Web.Controllers
OrderController0048Microsoft.eShopWeb.Web.Controllers
LoginModel0.170.2547Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account
AccountController0.730.7983Microsoft.eShopWeb.Web.Controllers
Constants000Microsoft.eShopWeb.Web
ErrorModel006Microsoft.eShopWeb.Web.Pages
IndexModel0016Microsoft.eShopWeb.Web.Pages
Program0017Microsoft.eShopWeb.Web
InitialIdentityModel0058Microsoft.eShopWeb.Infrastructure .Identity.Migrations
ManageNavPages005Microsoft.eShopWeb.Web.Views.Manage
AppIdentityDbContextModelSnapshot0018Microsoft.eShopWeb.Infrastructure .Identity.Migrations
CheckoutModel0.60.7549Microsoft.eShopWeb.Web.Pages.Basket
IndexModel0.630.7651Microsoft.eShopWeb.Web.Pages.Basket
CatalogContextModelSnapshot0023Microsoft.eShopWeb.Infrastructure.Data .Migrations
AddExtraConstraints0024Microsoft.eShopWeb.Infrastructure.Data .Migrations
PrivacyModel001Microsoft.eShopWeb.Web.Pages
Basket0.50.6730Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent
Initial0054Microsoft.eShopWeb.Infrastructure.Data .Migrations

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
ApplicationCore.dll::Ardalis .GuardClauses2111005013
Microsoft.eShopWeb21110010020
Microsoft.eShopWeb.ApplicationCore .Specifications3546170077.1437
Microsoft.eShopWeb.ApplicationCore .Services64136530032.81111
Microsoft.eShopWeb.ApplicationCore .Interfaces0010---124
Microsoft.eShopWeb.ApplicationCore .Exceptions4291002510
Microsoft.eShopWeb.ApplicationCore .Entities2293428.3310080
Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate682784172098.5373
Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate14582212.5-03
Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate1711120010053
Infrastructure.dll::0351316---21
Microsoft.eShopWeb.Infrastructure .Services1101375-11
Microsoft.eShopWeb.Infrastructure .Logging4251005013
Microsoft.eShopWeb.Infrastructure .Identity41263342.8610054
Microsoft.eShopWeb.Infrastructure .Identity.Migrations1902597200-012
Microsoft.eShopWeb.Infrastructure.Data97243671211.0185.57116
Microsoft.eShopWeb.Infrastructure.Data .Migrations2793635300-012
Web.dll::05205---45
Web.dll::Microsoft.AspNetCore.Mvc226100-15
Microsoft.eShopWeb.Web117104642316.4355.56083
Microsoft.eShopWeb.Web.Interfaces001---43
Microsoft.eShopWeb.Web.HealthChecks22445200-112
Microsoft.eShopWeb.Web.Services852343555.5691.76422
Microsoft.eShopWeb.Web.Views.Manage1251100-04
Microsoft.eShopWeb.Web.ViewModels5923060057.6367
Microsoft.eShopWeb.Web.ViewModels.Manage50207800-19
Microsoft.eShopWeb.Web.ViewModels .Account2610740019.2314
Microsoft.eShopWeb.Web.Pages1017830060011
Microsoft.eShopWeb.Web.Pages.Basket81138740053.09323
Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent1635110087.5020
Microsoft.eShopWeb.Web.Controllers28165773113.774.98037
Microsoft.eShopWeb.Web.Controllers.Api5140200100010
Microsoft.eShopWeb.Web.Areas.Identity12010010005
Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account37471249.7635.14023

Quality Gates
317

ok   Quality Gate Fail:    Percentage Coverage

Scalar Result: 32.67 %

ok   Quality Gate Fail:    Percentage Coverage on New Code

Scalar Result: 47.31 %

ok   Quality Gate Fail:    Percentage Coverage on Refactored Code

Scalar Result: 44.65 %

ok   Quality Gate Pass:    Blocker Issues

No issue matched

ok   Quality Gate Pass:    Critical Issues

No issue matched

ok   Quality Gate Fail:    New Blocker / Critical / High Issues

121 issues matched

121 issuesSeverityDebtAnnual InterestFull Name
High issue on: Microsoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>033High04310min0121h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints032High04410min0131h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .SlugifyParameterTransformer031High04110min0101h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .HealthChecks.ApiHealthCheck036High04210min0111h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .HealthChecks.HomePageHealthCheck035High04710min0161h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogViewModelService034High04810min0171h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web.Pages.ErrorModel027High04510min0141h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Pages.PrivacyModel026High04610min0151h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel025High04010min0091h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketViewModel030High03410min0031h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel029High03810min0041h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.IndexModel028High03110min0011h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Pages.Shared.Components.BasketComponent .Basket037High03710min0021h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel046High03610min0071h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel045High03910min0081h 0minRule violated: From now, all types added should be 100% covered by tests
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Up(MigrationBuilder )044High0665min0051h 0minRule violated: From now, all methods added should respect basic quality principles
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Down (MigrationBuilder)049High0675min0061h 0minRule violated: From now, all methods added should respect basic quality principles
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T>048High0011h 0min03820minRule violated: Avoid transforming an immutable type into a mutable one
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BasketWithItemsSpecification047High03310min04120minRule violated: Avoid transforming an immutable type into a mutable one
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CatalogFilterSpecification040High03210min04020minRule violated: Avoid transforming an immutable type into a mutable one
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CustomerOrdersWithItemsSpecification039High03510min03520minRule violated: Avoid transforming an immutable type into a mutable one
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CatalogFilterPaginatedSpecification. .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)038High0626min03420minRule violated: Constructor should not call a virtual method
High issue on: Microsoft.eShopWeb.Web .Interfaces.IBasketViewModelService043High01115min0001h 1minRule violated: Avoid namespaces mutually dependent
High issue on: Microsoft.eShopWeb.Web.Interfaces042High0002h 0min03720minRule violated: Avoid namespaces dependency cycles
High issue on: Microsoft.eShopWeb .ApplicationCore.Interfaces.IRepository <T>041High00520min03620minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .ViewComponents.Basket008High00320min04720minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .Services.ICatalogService007High00220min04620minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogService006High00420min04920minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .Services.CatalogService011High01020min04820minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .ViewModels.BasketItemViewModel010High00920min04320minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .ViewModels.BasketViewModel009High00620min04220minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .Controllers.BasketController002High00720min04520minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb.Web .Controllers.CatalogController001High00820min04420minRule violated: API Breaking Changes: Types
High issue on: Microsoft.eShopWeb .ApplicationCore.Services.BasketService. .ctor(IAsyncRepository<Basket> ,IRepository<CatalogItem>,IUriComposer ,IAppLogger<BasketService>)000High01910min02320minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .ApplicationCore.Interfaces .IOrderRepository.GetByIdWithItems(Int32 )005High01810min02220minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .GetById(Int32)004High02110min02520minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .GetSingleBySpec(ISpecification<T>)003High02010min02420minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .ListAll()012High01510min02120minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .List(ISpecification<T>)021High01410min01820minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T>.Add (T)020High01710min02020minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .Update(T)019High01610min01920minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .Delete(T)024High02210min03120minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb .Infrastructure.Data.OrderRepository .GetByIdWithItems(Int32)023High02810min03020minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb.Web .Startup.Configure(IApplicationBuilder ,IHostingEnvironment)022High02710min03320minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb.Web .Services.BasketViewModelService..ctor (IAsyncRepository<Basket>,IRepository <CatalogItem>,IUriComposer)015High03010min03220minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb.Web .Controllers.ManageController.Index()014High02910min02720minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb.Web .Controllers.OrderController.Index()013High02410min02620minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb.Web .Controllers.Api.CatalogController..ctor (ICatalogService)018High02310min02920minRule violated: API Breaking Changes: Methods
High issue on: Microsoft.eShopWeb.Web .Services.BasketViewModelService ._itemRepository017High02610min02820minRule violated: API Breaking Changes: Fields
High issue on: Microsoft.eShopWeb .ApplicationCore.Interfaces .IAsyncRepository<T>016High02510min03920minRule violated: API Breaking Changes: Interfaces and Abstract Classes
High issue on: Microsoft.eShopWeb .ApplicationCore.Interfaces .IOrderRepository083High04910min08420minRule violated: API Breaking Changes: Interfaces and Abstract Classes
High issue on: Microsoft.eShopWeb .ApplicationCore.Interfaces .ISpecification<T>082High05310min08320minRule violated: API Breaking Changes: Interfaces and Abstract Classes
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.BuildTargetModel (ModelBuilder)081High05410min08220minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Startup.ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)086High05210min08720minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel .OnPostAsync(String)085High05010min08620minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .HealthChecks.ApiHealthCheck .CheckHealthAsync(HealthCheckContext ,CancellationToken)084High0559min08520minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .HealthChecks.HomePageHealthCheck .CheckHealthAsync(HealthCheckContext ,CancellationToken)077High0578min07820minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel..ctor (IBasketService,IBasketViewModelService ,IUriComposer,SignInManager <ApplicationUser>,IOrderService)076High0588min07720minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .GetOrSetBasketCookieAndUserName()075High0568min07620minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Up(MigrationBuilder )080High0616min08120minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Down (MigrationBuilder)079High0606min08020minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel.OnPost (Dictionary<String,Int32>)078High0645min07920minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Controllers.ManageController.MyAccount( )087High0655min09620minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Controllers.OrderController.MyOrders()096High0635min09520minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .SetBasketModelAsync()095High0684min 40s09420minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .HealthChecks.ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)094High0733min 46s09920minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogViewModelService .GetBrands()099High0713min 46s09820minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogViewModelService .GetTypes()098High0723min 46s09720minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.IndexModel.OnPostUpdate (Dictionary<String,Int32>)097High0693min 46s09020minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .HealthChecks.HomePageHealthCheck..ctor (IHttpContextAccessor)090High0742min 53s08920minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T>.set_OrderBy (Expression<Func<T,Object>>)089High0902min 0s08820minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)088High0912min 0s09320minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T>.ApplyOrderBy (Expression<Func<T,Object>>)093High0922min 0s09220minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)092High0892min 0s09120minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.get_RequestId()091High0862min 0s07520minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.set_RequestId(String)058High0872min 0s05920minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.get_ShowRequestId()057High0882min 0s05820minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.OnGet()056High0972min 0s05720minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel .get_CatalogItemId()061High0982min 0s06220minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel .get_OldUnitPrice()060High0992min 0s06120minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel .set_OldUnitPrice(Decimal)059High0962min 0s06020minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketViewModel .get_BuyerId()052High0932min 0s05320minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .get_BasketModel()051High0942min 0s05220minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .set_BasketModel(BasketViewModel)050High0952min 0s05120minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel .set_Input(LoginModel+InputModel)055High0782min 0s05620minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel .get_ExternalLogins()054High0762min 0s05520minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.get_Email()053High0772min 0s05420minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.set_Email(String)062High0802min 0s07120minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.get_Password()071High0842min 0s07020minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.set_Password (String)070High0832min 0s06920minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.get_RememberMe()069High0812min 0s07420minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.set_RememberMe (Boolean)074High0822min 0s07320minRule violated: New Methods should be tested
High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .CatalogContextModelSnapshot.BuildModel (ModelBuilder)073High05110min07220minRule violated: Methods refactored should be tested
High issue on: Microsoft.eShopWeb.Web .Controllers.AccountController .ConfirmEmail(String,String)072High0597min06520minRule violated: Methods refactored should be tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)065High0703min 46s06420minRule violated: Methods refactored should be tested
High issue on: Microsoft.eShopWeb.Web .Controllers.AccountController.SignOut()064High0752min 53s06320minRule violated: Methods refactored should be tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Entities.OrderAggregate .Order063High0852min 0s06820minRule violated: Types almost 100% tested should be 100% tested
High issue on: Microsoft.eShopWeb .ApplicationCore.Entities.OrderAggregate068High0792min 0s06720minRule violated: Namespaces almost 100% tested should be 100% tested
High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel .OnPostAsync(String)067High01310min06620minRule violated: Methods should have a low C.R.A.P score
High issue on: Microsoft.eShopWeb.Web .Pages.Shared.Components.BasketComponent .Basket066High01212min05020minRule violated: Avoid naming types and namespaces with the same identifier

Statistics

Stat   Severity   Debt   Annual Interest
Sum:-2d 7h6d 4h
Average:-11min25min
Minimum:-2min 0s20min
Maximum:-2h 0min1h 1min
Standard deviation:-12min14min
Variance:-20d25d
ok   Quality Gate Fail:    Critical Rules Violated

6 rules matched

6 rulesissuesFull Name
Avoid namespaces mutually dependent32 issuesRule
API Breaking Changes: Types19 issuesRule
API Breaking Changes: Methods015 issuesRule
API Breaking Changes: Fields51 issueRule
API Breaking Changes: Interfaces and Abstract Classes23 issuesRule
Avoid having different types with same name41 issueRule

Statistics

Stat   issues
Sum:31
Average:5.17
Minimum:1
Maximum:15
Standard deviation:5.18
Variance:26.81
ok   Quality Gate Warn:    Percentage Debt

Scalar Result: 23.09 %

ok   Quality Gate Pass:    New Debt since Baseline

Scalar Result: -1.32 man-days

ok   Quality Gate Fail:    Debt Rating per Namespace

13 namespaces matched

13 namespacesdebtRatingdebtRatiodevTimeInManDaydebtInManDayissuesFull Name
Ardalis.GuardClauses05D0442.491143min1118min104 issuesArdalis.GuardClauses
Microsoft.eShopWeb.ApplicationCore .Specifications06D1121.81031d 3h052h 32min0221 issuesMicrosoft.eShopWeb.ApplicationCore .Specifications
Microsoft.eShopWeb.ApplicationCore .Interfaces01E0160.61055h 28min033h 19min077 issuesMicrosoft.eShopWeb.ApplicationCore .Interfaces
Microsoft.eShopWeb.Infrastructure .Identity.Migrations03D0538.78023d 4h021d 3h086 issuesMicrosoft.eShopWeb.Infrastructure .Identity.Migrations
Microsoft.eShopWeb.Infrastructure.Data .Migrations04D0737015d 2h011d 7h0316 issuesMicrosoft.eShopWeb.Infrastructure.Data .Migrations
Microsoft.AspNetCore.Mvc07D0345.520951min1023min096 issuesMicrosoft.AspNetCore.Mvc
Microsoft.eShopWeb.Web.Interfaces02E00520.831225min062h 15min112 issuesMicrosoft.eShopWeb.Web.Interfaces
Microsoft.eShopWeb.Web.HealthChecks12D0637.46064h 36min071h 43min0612 issuesMicrosoft.eShopWeb.Web.HealthChecks
Microsoft.eShopWeb.Web.Views.Manage10D1220.23083h 36min0943min0513 issuesMicrosoft.eShopWeb.Web.Views.Manage
Microsoft.eShopWeb.Web.Pages08D1022.27074h 1min0853min0415 issuesMicrosoft.eShopWeb.Web.Pages
Microsoft.eShopWeb.Web.Controllers00E0254.49006d 0h003d 2h0073 issuesMicrosoft.eShopWeb.Web.Controllers
Microsoft.eShopWeb.Web.Areas.Identity09D0930.091043min1213min122 issuesMicrosoft.eShopWeb.Web.Areas.Identity
Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account11D0832.93041d 1h043h 10min0126 issuesMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account

Statistics

Stat   debtRating   debtRatio   devTimeInManDay   debtInManDay   issues
Sum:-964.5220d8d 4h203
Average:-74.191d 4h5h 17min15.62
Minimum:-20.2325min13min2
Maximum:-520.836d 0h3d 2h73
Standard deviation:-129.461d 7h7h 33min18.01
Variance:-16 759113 570d25 748d324.24
ok   Quality Gate Fail:    New Annual Interest since Baseline

Scalar Result: 4.54 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

                              This group contains children groups
                              .NET Framework Usage
                              000

                                Defining JustMyCode
                                000

                                  This group contains children groups
                                  Trend Metrics
                                  000

                                    Code Diff Summary
                                    000

                                      Rules extracted from Source Code
                                      000

                                        Code Smells
                                        710

                                        warning   Rule Violated:    Avoid types with too many methods

                                        1 type matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 typenbMethodsinstanceMethodsstaticMethods# lines of code (LOC)DebtAnnual InterestFull Name
                                        ManageController022022 methods0no method018901h 6min03min 18sMicrosoft.eShopWeb.Web.Controllers .ManageController

                                        Code Smells Regression
                                        630

                                        warning   Rule Violated:    From now, all types added should be 100% covered by tests

                                        15 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        15 typesPercentage CoveragemethodsCulprit# lines of code (LOC)DebtAnnual InterestFull Name
                                        SpecificationEvaluator<T>0664.29%101 method07140410min041h 0minMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                        AddExtraConstraints090%053 methods00870510min051h 0minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints
                                        SlugifyParameterTransformer0466.67%091 method1330610min061h 0minMicrosoft.eShopWeb.Web .SlugifyParameterTransformer
                                        ApiHealthCheck080%081 method08120310min031h 0minMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck
                                        HomePageHealthCheck130%131 method09100010min001h 0minMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck
                                        CachedCatalogViewModelService0564.71%072 methods04170110min011h 0minMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService
                                        ErrorModel140%024 methods1240210min021h 0minMicrosoft.eShopWeb.Web.Pages.ErrorModel
                                        PrivacyModel100%141 method1400710min071h 0minMicrosoft.eShopWeb.Web.Pages .PrivacyModel
                                        BasketItemViewModel0278.57%043 methods06141210min121h 0minMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel
                                        BasketViewModel0088.89%111 method1091310min131h 0minMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel
                                        CheckoutModel120%006 methods03271410min141h 0minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                        IndexModel0377.42%063 methods02311110min111h 0minMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel
                                        Basket0187.5%121 method05160810min081h 0minMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket
                                        LoginModel0741.94%034 methods01310910min091h 0minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel
                                        LoginModel+InputModel110%016 methods1161010min101h 0minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel
                                        warning   Rule Violated:    From now, all methods added should respect basic quality principles

                                        2 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 methods# lines of code (LOC)# IL instructionsCyclomatic Complexity (CC)IL Cyclomatic Complexity (ILCC)IL Nesting Depth# Parameters# Variables# OverloadsDebtAnnual InterestFull Name
                                        Up(MigrationBuilder)06022401010001020105min01h 0minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                        Down(MigrationBuilder)16122411111011121115min11h 0minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                        warning   Rule Violated:    Avoid transforming an immutable type into a mutable one

                                        4 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 typesculpritFieldsDebtSeverityFull Name
                                        BaseSpecification<T>05 fields01h 0min1HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T>
                                        BasketWithItemsSpecification1no field110min0HighMicrosoft.eShopWeb.ApplicationCore .Specifications .BasketWithItemsSpecification
                                        CatalogFilterSpecification3no field310min3HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterSpecification
                                        CustomerOrdersWithItemsSpecification2no field210min2HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification

                                        Object Oriented Design
                                        1040

                                        warning   Rule Violated:    Non-static classes should be instantiated or turned to static

                                        2 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 typesVisibilityDebtSeverityFull Name
                                        SpecificationEvaluator<T>0Public02min 0s0MediumMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                        PaymentMethod1Public12min 0s1MediumMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod
                                        warning   Rule Violated:    Methods should be declared static if possible

                                        10 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        10 methodsstaticFieldsUsedmethodsCallingMeDebtSeverityFull Name
                                        ConfigurateCatalogItemOrdered (EntityTypeBuilder<CatalogItemOrdered>)03no field021 method021min 0s03MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext .ConfigurateCatalogItemOrdered (EntityTypeBuilder<CatalogItemOrdered>)
                                        ConfigureAddress(EntityTypeBuilder <Address>)04no field031 method031min 0s04MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureAddress (EntityTypeBuilder<Address>)
                                        OnGet()02no field08no method080min 30s02MediumMicrosoft.eShopWeb.Web.Pages .PrivacyModel.OnGet()
                                        OnGet()00no field09no method090min 30s00MediumMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnGet()
                                        ConfigureBasket(EntityTypeBuilder<Basket >)01no field001 method001min 0s01MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureBasket (EntityTypeBuilder<Basket>)
                                        ConfigureCatalogItem(EntityTypeBuilder <CatalogItem>)08no field011 method011min 0s08MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureCatalogItem (EntityTypeBuilder<CatalogItem>)
                                        ConfigureCatalogBrand(EntityTypeBuilder <CatalogBrand>)09no field071 method071min 0s09MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureCatalogBrand (EntityTypeBuilder<CatalogBrand>)
                                        ConfigureCatalogType(EntityTypeBuilder <CatalogType>)07no field061 method061min 0s07MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureCatalogType (EntityTypeBuilder<CatalogType>)
                                        ConfigureOrder(EntityTypeBuilder<Order>)05no field051 method051min 0s05MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureOrder (EntityTypeBuilder<Order>)
                                        ConfigureOrderItem(EntityTypeBuilder <OrderItem>)06no field041 method041min 0s06MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureOrderItem (EntityTypeBuilder<OrderItem>)
                                        warning   Rule Violated:    Constructor should not call a virtual method

                                        2 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 methodsvirtualMethodsCalledDerivedTypesDebtSeverityFull Name
                                        .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)11 method0no type16min0HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterPaginatedSpecification. .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)
                                        .ctor(String)02 methods1no type012min1HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                        warning   Rule Violated:    Avoid empty interfaces

                                        1 type matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 typeTypesThatImplementMeDebtSeverityFull Name
                                        IAggregateRoot03 types019min0MediumMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAggregateRoot

                                        Design
                                        1020

                                        warning   Rule Violated:    Avoid namespaces with few types

                                        13 namespaces matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        13 namespacestypesDebtSeverityFull Name
                                        Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent091 type035min03LowMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent
                                        Microsoft.eShopWeb.Web.HealthChecks062 types045min04LowMicrosoft.eShopWeb.Web.HealthChecks
                                        Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account042 types055min05LowMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account
                                        Microsoft.eShopWeb.Web.Pages033 types005min00LowMicrosoft.eShopWeb.Web.Pages
                                        Microsoft.eShopWeb.Web.Pages.Basket004 types015min01LowMicrosoft.eShopWeb.Web.Pages.Basket
                                        Ardalis.GuardClauses121 type025min02LowArdalis.GuardClauses
                                        Microsoft.eShopWeb111 type065min06LowMicrosoft.eShopWeb
                                        Microsoft.AspNetCore.Mvc101 type105min10LowMicrosoft.AspNetCore.Mvc
                                        Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate072 types115min11LowMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
                                        Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate082 types125min12LowMicrosoft.eShopWeb.ApplicationCore .Entities.BasketAggregate
                                        Microsoft.eShopWeb.Web.Controllers.Api052 types075min07LowMicrosoft.eShopWeb.Web.Controllers.Api
                                        Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate014 types085min08LowMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
                                        Microsoft.eShopWeb.Web.ViewModels .Account024 types095min09LowMicrosoft.eShopWeb.Web.ViewModels .Account
                                        warning   Rule Violated:    Nested types should not be visible

                                        1 type matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 typeVisibilitytypesUserDebtSeverityFull Name
                                        LoginModel+InputModel0Public0no type02min 0s0MediumMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel

                                        Architecture
                                        521

                                        warningCritical   Critical Rule Violated:    Avoid namespaces mutually dependent

                                        2 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 typesshouldntUsebecauseNamespaceshouldntUseNamespaceDebtAnnual InterestFull Name
                                        IBasketViewModelService01 typeMicrosoft.eShopWeb.Web.InterfacesMicrosoft.eShopWeb.Web.Pages.Basket015min01h 1minMicrosoft.eShopWeb.Web.Interfaces .IBasketViewModelService
                                        Order11 typeMicrosoft.eShopWeb.ApplicationCore.Entities.OrderAggregateMicrosoft.eShopWeb.ApplicationCore.Interfaces115min11h 1minMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order
                                        warning   Rule Violated:    Avoid namespaces dependency cycles

                                        2 namespaces matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 namespacescycleDebtSeverityFull Name
                                        Microsoft.eShopWeb.Web.Interfaces02 namespaces02h 0min0HighMicrosoft.eShopWeb.Web.Interfaces
                                        Microsoft.eShopWeb.ApplicationCore .Interfaces12 namespaces12h 0min1HighMicrosoft.eShopWeb.ApplicationCore .Interfaces
                                        warning   Rule Violated:    Assemblies with poor cohesion (RelationalCohesion)

                                        1 assembly matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 assemblyChildTypesrelationalCohesionRelational cohesionDebtSeverityFull Name
                                        Web053 types0101.17010min0LowWeb

                                        API Breaking Changes
                                        204

                                        warningCritical   Critical Rule Violated:    API Breaking Changes: Types

                                        9 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        9 typesNewVisibilityDebtSeverityFull Name
                                        IRepository<T> 220min2HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IRepository<T>
                                        Basket 320min3HighMicrosoft.eShopWeb.Web.ViewComponents .Basket
                                        ICatalogService 020min0HighMicrosoft.eShopWeb.Web.Services .ICatalogService
                                        CachedCatalogService 120min1HighMicrosoft.eShopWeb.Web.Services .CachedCatalogService
                                        CatalogService 420min4HighMicrosoft.eShopWeb.Web.Services .CatalogService
                                        BasketItemViewModel 720min7HighMicrosoft.eShopWeb.Web.ViewModels .BasketItemViewModel
                                        BasketViewModel 820min8HighMicrosoft.eShopWeb.Web.ViewModels .BasketViewModel
                                        BasketController 520min5HighMicrosoft.eShopWeb.Web.Controllers .BasketController
                                        CatalogController 620min6HighMicrosoft.eShopWeb.Web.Controllers .CatalogController
                                        warningCritical   Critical Rule Violated:    API Breaking Changes: Methods

                                        15 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        15 methodsNewVisibilityDebtSeverityFull Name
                                        .ctor(IAsyncRepository<Basket> ,IRepository<CatalogItem>,IUriComposer ,IAppLogger<BasketService>) 0410min04HighMicrosoft.eShopWeb.ApplicationCore .Services.BasketService..ctor (IAsyncRepository<Basket>,IRepository <CatalogItem>,IUriComposer,IAppLogger <BasketService>)
                                        GetByIdWithItems(Int32) 0510min05HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository .GetByIdWithItems(Int32)
                                        GetById(Int32) 0610min06HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.GetById(Int32)
                                        GetSingleBySpec(ISpecification<T>) 0310min03HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.GetSingleBySpec (ISpecification<T>)
                                        ListAll() 0010min00HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.ListAll()
                                        List(ISpecification<T>) 0110min01HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.List(ISpecification<T>)
                                        Add(T) 0210min02HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.Add(T)
                                        Update(T) 0710min07HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.Update(T)
                                        Delete(T) 1210min12HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.Delete(T)
                                        GetByIdWithItems(Int32) 1310min13HighMicrosoft.eShopWeb.Infrastructure.Data .OrderRepository.GetByIdWithItems(Int32)
                                        Configure(IApplicationBuilder ,IHostingEnvironment) 1410min14HighMicrosoft.eShopWeb.Web.Startup.Configure (IApplicationBuilder,IHostingEnvironment )
                                        .ctor(IAsyncRepository<Basket> ,IRepository<CatalogItem>,IUriComposer) 1110min11HighMicrosoft.eShopWeb.Web.Services .BasketViewModelService..ctor (IAsyncRepository<Basket>,IRepository <CatalogItem>,IUriComposer)
                                        Index() 0810min08HighMicrosoft.eShopWeb.Web.Controllers .ManageController.Index()
                                        Index() 0910min09HighMicrosoft.eShopWeb.Web.Controllers .OrderController.Index()
                                        .ctor(ICatalogService) 1010min10HighMicrosoft.eShopWeb.Web.Controllers.Api .CatalogController..ctor(ICatalogService )
                                        warningCritical   Critical Rule Violated:    API Breaking Changes: Fields

                                        1 field matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 fieldNewVisibilityDebtSeverityFull Name
                                        _itemRepositoryPrivate010min0HighMicrosoft.eShopWeb.Web.Services .BasketViewModelService._itemRepository
                                        warningCritical   Critical Rule Violated:    API Breaking Changes: Interfaces and Abstract Classes

                                        3 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        3 typesmethodsAddedmethodsRemovedDebtSeverityFull Name
                                        IAsyncRepository<T>11 method1no method010min0HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAsyncRepository<T>
                                        IOrderRepository2no method01 method110min1HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository
                                        ISpecification<T>05 methods2no method210min2HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.ISpecification<T>

                                        Code Coverage
                                        280

                                        warning   Rule Violated:    Code should be tested

                                        238 methods matched

                                        238 methodsPercentage Coverage# lines of code (LOC)# lines of code not coveredCyclomatic Complexity (CC)DebtAnnual InterestFull Name
                                        GetQuery(IQueryable<T>,ISpecification<T> )00564.29%013140455007703026min00116minMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>.GetQuery (IQueryable<T>,ISpecification<T>)
                                        BuildTargetModel(ModelBuilder)0370%0047500075003140033h 22min0089minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints .BuildTargetModel(ModelBuilder)
                                        set_OrderBy(Expression<Func<T,Object>>)0390%0681065106710672min 45s0109minMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderBy(Expression<Func<T,Object>>)
                                        set_OrderByDescending(Expression<Func<T ,Object>>)0410%0671064106810692min 45s0099minMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)
                                        get_RequestId()0400%0701068106110842min 17s0176minMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_RequestId()
                                        GetOrSetBasketCookieAndUserName()0360%03280288037302530min0186minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel .GetOrSetBasketCookieAndUserName()
                                        ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)01211.54%0072600723020401638min0244min 46sMicrosoft.eShopWeb.Web.Startup .ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)
                                        SetBasketModelAsync()01150%0554060205320566min0254min 42sMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.SetBasketModelAsync()
                                        OnPostAsync(String)0320%012140101401160081h 26min0264min 41sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                        SetBasketModelAsync()0310%05440494052204213min0383min 44sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.SetBasketModelAsync()
                                        set_RequestId(String)0330%0731069106910752min 17s0393min 38sMicrosoft.eShopWeb.Web.Pages.ErrorModel .set_RequestId(String)
                                        CheckHealthAsync(HealthCheckContext ,CancellationToken)0350%02690229048203622min0453min 7sMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                        CheckHealthAsync(HealthCheckContext ,CancellationToken)0340%03580328055203820min0512min 48sMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                        .ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)0490%03480338064104510min0502min 48sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel..ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)
                                        Up(MigrationBuilder)0480%0436041606510518min0652min 11sMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                        Down(MigrationBuilder)0500%0426042606210508min0642min 11sMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                        ApplyOrderBy(Expression<Func<T,Object>>)0520%0721070106310712min 31s0692min 0sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderBy(Expression<Func<T,Object>> )
                                        ApplyOrderByDescending(Expression<Func<T ,Object>>)0510%0711071106610702min 31s0702min 0sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)
                                        TransformOutbound(Object)00066.67%0563072104720662min 59s0812min 0sMicrosoft.eShopWeb.Web .SlugifyParameterTransformer .TransformOutbound(Object)
                                        CreateIdentityIfNotCreated (IServiceCollection)00760%0475056204320643min 12s0932min 0sMicrosoft.eShopWeb.Web.Startup .CreateIdentityIfNotCreated (IServiceCollection)
                                        Configure(IApplicationBuilder ,IHostingEnvironment,LinkGenerator)00366.67%008210397009604412min0942min 0sMicrosoft.eShopWeb.Web.Startup.Configure (IApplicationBuilder,IHostingEnvironment ,LinkGenerator)
                                        .ctor(IHttpContextAccessor,LinkGenerator )0470%0613053305710594min 35s0912min 0sMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)
                                        .ctor(IHttpContextAccessor)0430%0632057205610623min 26s0922min 0sMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck..ctor (IHttpContextAccessor)
                                        GetBrands()0420%0583052303820488min0952min 0sMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetBrands ()
                                        GetTypes()0440%0593051304120498min0982min 0sMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetTypes( )
                                        get_ShowRequestId()0460%0661066106010912min 17s0992min 0sMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_ShowRequestId()
                                        OnGet()0450%0901073103920604min 28s0962min 0sMicrosoft.eShopWeb.Web.Pages.ErrorModel .OnGet()
                                        OnGet()0160%0980098005810982min 0s0972min 0sMicrosoft.eShopWeb.Web.Pages .PrivacyModel.OnGet()
                                        get_CatalogItemId()0180%0911091105910902min 17s0842min 0sMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_CatalogItemId()
                                        get_OldUnitPrice()0200%0921092109010862min 17s0852min 0sMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_OldUnitPrice()
                                        set_OldUnitPrice(Decimal)0190%0871087109110872min 17s0822min 0sMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.set_OldUnitPrice (Decimal)
                                        get_BuyerId()0150%0881088109210882min 17s0832min 0sMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel.get_BuyerId()
                                        get_BasketModel()0210%0891089108910922min 17s0862min 0sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.get_BasketModel()
                                        set_BasketModel(BasketViewModel)0280%0961096108610962min 17s0892min 0sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.set_BasketModel (BasketViewModel)
                                        OnGet()0170%0990099008710992min 0s0902min 0sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnGet()
                                        OnPost(Dictionary<String,Int32>)0300%04850485088104610min0872min 0sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnPost(Dictionary<String ,Int32>)
                                        OnPost(CatalogItemViewModel)00166.67%0446055204220585min0882min 0sMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPost(CatalogItemViewModel)
                                        OnPostUpdate(Dictionary<String,Int32>)0230%0573054309710556min0712min 0sMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPostUpdate(Dictionary <String,Int32>)
                                        GetBasketViewModelAsync()00466.67%0456058202630537min0662min 0sMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket .GetBasketViewModelAsync()
                                        MyAccount()0250%05350435046204313min0672min 0sMicrosoft.eShopWeb.Web.Controllers .ManageController.MyAccount()
                                        MyOrders()0240%05150445024303721min0682min 0sMicrosoft.eShopWeb.Web.Controllers .OrderController.MyOrders()
                                        set_Input(LoginModel+InputModel)0270%0971097109810972min 17s0722min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.set_Input (LoginModel+InputModel)
                                        get_ExternalLogins()0220%0931093109910932min 17s0782min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel .get_ExternalLogins()
                                        OnGetAsync(String)00266.67%0466062202330528min0772min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnGetAsync (String)
                                        get_Email()0260%0941094109610942min 17s0802min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_Email()
                                        set_Email(String)0290%0951095109310952min 17s0792min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_Email(String)
                                        get_Password()0140%0771086109410852min 17s0742min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_Password()
                                        set_Password(String)0840%0781077109510762min 17s0732min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_Password(String)
                                        get_RememberMe()0830%0791078108510772min 17s0762min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_RememberMe()
                                        set_RememberMe(Boolean)0380%0691067107010892min 17s0752min 0sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_RememberMe(Boolean)
                                        PageNavClass(ViewContext,String)0870%0622059204020576min00018minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.PageNavClass(ViewContext ,String)
                                        Up(MigrationBuilder)0860%0053300533001150003h 46min00210minMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Up (MigrationBuilder)
                                        Up(MigrationBuilder)0820%0063200632000150013h 39min00310minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Up(MigrationBuilder)
                                        BuildTargetModel(ModelBuilder)0780%0017500175006120053h 22min0049minMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.BuildTargetModel (ModelBuilder)
                                        BuildModel(ModelBuilder)0770%0007500275005120023h 22min0069minMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .AppIdentityDbContextModelSnapshot .BuildModel(ModelBuilder)
                                        BuildTargetModel(ModelBuilder)0790%0037500375002140043h 22min0059minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.BuildTargetModel (ModelBuilder)
                                        BuildModel(ModelBuilder)0810%0027500475004140063h 22min0079minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.CatalogContextModelSnapshot .BuildModel(ModelBuilder)
                                        SeedAsync(CatalogContext,ILoggerFactory ,Nullable<Int32>)00856.25%010160377010602032min0116minMicrosoft.eShopWeb.Infrastructure.Data .CatalogContextSeed.SeedAsync (CatalogContext,ILoggerFactory,Nullable <Int32>)
                                        get_ActivePageKey()0800%0751074107610732min 17s0126minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_ActivePageKey()
                                        get_Index()0880%0761075107710742min 17s0146minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_Index()
                                        get_ChangePassword()0960%0801076107410782min 17s0136minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_ChangePassword()
                                        get_ExternalLogins()0950%0841083107110822min 17s0156minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_ExternalLogins()
                                        get_TwoFactorAuthentication()0970%0851084107210832min 17s0166minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages .get_TwoFactorAuthentication()
                                        .ctor()0990%0652063207310614min 8s0196minMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer..ctor()
                                        FormatKey(String)0980%03880298022302630min0205minMicrosoft.eShopWeb.Web.Controllers .ManageController.FormatKey(String)
                                        Index(IndexViewModel)0940%009170081700870071h 29min0215minMicrosoft.eShopWeb.Web.Controllers .ManageController.Index(IndexViewModel)
                                        LoginWith2fa(LoginWith2faViewModel ,Boolean,String)0900%011160091601250091h 25min0225minMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa (LoginWith2faViewModel,Boolean,String)
                                        AddErrors(IdentityResult)0890%05050465051203126min0235minMicrosoft.eShopWeb.Web.Controllers .ManageController.AddErrors (IdentityResult)
                                        ConfigureInMemoryDatabases (IServiceCollection)00660%0525061202530653min 12s0274min 29sMicrosoft.eShopWeb.Web.Startup .ConfigureInMemoryDatabases (IServiceCollection)
                                        CreateOrderAsync(Int32,Address)0910%0151301213050202131min0284min 22sMicrosoft.eShopWeb.ApplicationCore .Services.OrderService.CreateOrderAsync (Int32,Address)
                                        ChangePassword(ChangePasswordViewModel)0930%0161301113017401246min0294min 22sMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword (ChangePasswordViewModel)
                                        EnableAuthenticator (EnableAuthenticatorViewModel)0920%017130131302140101h 0min0304min 22sMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator (EnableAuthenticatorViewModel)
                                        set_IdentityGuid(String)0760%0861085108210682min 45s0324min 13sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer .set_IdentityGuid(String)
                                        set_Code(String)0600%0811080108310792min 17s0314min 13sMicrosoft.eShopWeb.Web.ViewModels .Account.ResetPasswordViewModel.set_Code (String)
                                        Main(String[])0590%0191201512054201836min0354min 3sMicrosoft.eShopWeb.Web.Program.Main (String[])
                                        SetPassword(SetPasswordViewModel)0610%0201201412016401343min0344min 3sMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword (SetPasswordViewModel)
                                        LinkLoginCallback()0630%0181201612018401156min0334min 3sMicrosoft.eShopWeb.Web.Controllers .ManageController.LinkLoginCallback()
                                        AddErrors(IdentityResult)0620%04950475049203920min0363min 46sMicrosoft.eShopWeb.Web.Controllers .AccountController.AddErrors (IdentityResult)
                                        SendVerificationEmail(IndexViewModel)0580%0211101711036301933min0373min 44sMicrosoft.eShopWeb.Web.Controllers .ManageController.SendVerificationEmail (IndexViewModel)
                                        set_StatusMessage(String)0540%0821081108410802min 17s0403min 35sMicrosoft.eShopWeb.Web.Controllers .ManageController.set_StatusMessage (String)
                                        GetBasketItemCountAsync(String)0530%0251001810035302330min0413min 26sMicrosoft.eShopWeb.ApplicationCore .Services.BasketService .GetBasketItemCountAsync(String)
                                        Down(MigrationBuilder)0550%0241002110081104113min0423min 26sMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Down (MigrationBuilder)
                                        ExternalLogins()0570%0231002010013501442min0433min 26sMicrosoft.eShopWeb.Web.Controllers .ManageController.ExternalLogins()
                                        SetQuantities(Int32,Dictionary<String ,Int32>)0139.09%0221101910029302430min0443min 24sMicrosoft.eShopWeb.ApplicationCore .Services.BasketService.SetQuantities (Int32,Dictionary<String,Int32>)
                                        RemoveLogin(RemoveLoginViewModel)0560%02790239027302727min0463min 7sMicrosoft.eShopWeb.Web.Controllers .ManageController.RemoveLogin (RemoveLoginViewModel)
                                        EnableAuthenticator()0640%02890249028302827min0483min 7sMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator()
                                        GenerateRecoveryCodes()0720%02990259033302927min0473min 7sMicrosoft.eShopWeb.Web.Controllers .ManageController.GenerateRecoveryCodes( )
                                        get_StatusMessage()0710%0831082107810812min 17s0493min 3sMicrosoft.eShopWeb.Web.Controllers .ManageController.get_StatusMessage()
                                        Register(RegisterViewModel,String)0730%03780318031303325min0562min 48sMicrosoft.eShopWeb.Web.Controllers .AccountController.Register (RegisterViewModel,String)
                                        ChangePassword()0750%03180348032303425min0522min 48sMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword()
                                        SetPassword()0740%03080278034303225min0532min 48sMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword()
                                        Disable2fa()0700%03380268030303525min0552min 48sMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2fa()
                                        Detail(Int32)0660%03680308019401538min0542min 48sMicrosoft.eShopWeb.Web.Controllers .OrderController.Detail(Int32)
                                        .ctor(String)0650%0603050307910546min0572min 44sMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                        Down(MigrationBuilder)0670%04170407080104710min0592min 29sMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Down (MigrationBuilder)
                                        ConfirmEmail(String,String)0690%03970367015502230min0602min 29sMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                        ResetAuthenticator()0680%04070357044204017min0582min 29sMicrosoft.eShopWeb.Web.Controllers .ManageController.ResetAuthenticator()
                                        SignIn(LoginViewModel,String)00950%014140387014501737min0612min 20sMicrosoft.eShopWeb.Web.Controllers .AccountController.SignIn(LoginViewModel ,String)
                                        NullBasket(IGuardClause,Int32,Basket)01050%0642090104520633min 21s0622min 12sArdalis.GuardClauses.BasketGuards .NullBasket(IGuardClause,Int32,Basket)
                                        AddInclude(String)0850%0741079107510722min 31s0632min 11sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .AddInclude(String)

                                        Statistics

                                        Stat   Percentage Coverage   # lines of code (LOC)   # lines of code not covered   Cyclomatic Complexity (CC)   Debt   Annual Interest
                                        Sum:836.171 1521 0824497d 0h1d 3h
                                        Average:3.514.844.551.8914min2min 53s
                                        Minimum:00012min 0s2min 0s
                                        Maximum:66.677575153h 46min18min
                                        Standard deviation:13.9911.3411.232.3536min2min 12s
                                        Variance:195.66128.7126.075.54166d4h 51min
                                        warning   Rule Violated:    New Methods should be tested

                                        40 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        40 methodsPercentage Coverage# lines of code (LOC)# lines of code not coveredDebtSeverityFull Name
                                        BuildTargetModel(ModelBuilder)130%007500750210min13HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints .BuildTargetModel(ModelBuilder)
                                        ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)0011.54%012601230010min14HighMicrosoft.eShopWeb.Web.Startup .ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)
                                        OnPostAsync(String)140%021402140110min12HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                        CheckHealthAsync(HealthCheckContext ,CancellationToken)110%039039039min10HighMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                        CheckHealthAsync(HealthCheckContext ,CancellationToken)120%068068068min11HighMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                        .ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)150%048048048min18HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel..ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)
                                        GetOrSetBasketCookieAndUserName()180%058058058min19HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel .GetOrSetBasketCookieAndUserName()
                                        Up(MigrationBuilder)190%086086086min17HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                        Down(MigrationBuilder)160%076076076min15HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                        OnPost(Dictionary<String,Int32>)170%115115115min16HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnPost(Dictionary<String ,Int32>)
                                        MyAccount()100%095095095min03HighMicrosoft.eShopWeb.Web.Controllers .ManageController.MyAccount()
                                        MyOrders()030%105105105min04HighMicrosoft.eShopWeb.Web.Controllers .OrderController.MyOrders()
                                        SetBasketModelAsync()040%124124124min 40s02HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.SetBasketModelAsync()
                                        .ctor(IHttpContextAccessor,LinkGenerator )010%163163163min 46s00HighMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)
                                        GetBrands()020%153153153min 46s01HighMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetBrands ()
                                        GetTypes()050%133133133min 46s08HighMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetTypes( )
                                        OnPostUpdate(Dictionary<String,Int32>)080%143143143min 46s09HighMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPostUpdate(Dictionary <String,Int32>)
                                        .ctor(IHttpContextAccessor)090%172172172min 53s07HighMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck..ctor (IHttpContextAccessor)
                                        set_OrderBy(Expression<Func<T,Object>>)060%181181182min 0s05HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderBy(Expression<Func<T,Object>>)
                                        set_OrderByDescending(Expression<Func<T ,Object>>)070%191191192min 0s06HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)
                                        ApplyOrderBy(Expression<Func<T,Object>>)330%331331332min 0s33HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderBy(Expression<Func<T,Object>> )
                                        ApplyOrderByDescending(Expression<Func<T ,Object>>)340%341341342min 0s34HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)
                                        get_RequestId()320%311311312min 0s32HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_RequestId()
                                        set_RequestId(String)300%321321322min 0s30HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .set_RequestId(String)
                                        get_ShowRequestId()310%351351352min 0s31HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_ShowRequestId()
                                        OnGet()380%381381382min 0s38HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .OnGet()
                                        get_CatalogItemId()390%391391392min 0s39HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_CatalogItemId()
                                        get_OldUnitPrice()370%361361362min 0s37HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_OldUnitPrice()
                                        set_OldUnitPrice(Decimal)350%371371372min 0s35HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.set_OldUnitPrice (Decimal)
                                        get_BuyerId()360%301301302min 0s36HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel.get_BuyerId()
                                        get_BasketModel()230%231231232min 0s23HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.get_BasketModel()
                                        set_BasketModel(BasketViewModel)240%241241242min 0s24HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.set_BasketModel (BasketViewModel)
                                        set_Input(LoginModel+InputModel)220%211211212min 0s22HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.set_Input (LoginModel+InputModel)
                                        get_ExternalLogins()200%221221222min 0s20HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel .get_ExternalLogins()
                                        get_Email()210%251251252min 0s21HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_Email()
                                        set_Email(String)280%281281282min 0s28HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_Email(String)
                                        get_Password()290%291291292min 0s29HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_Password()
                                        set_Password(String)270%261261262min 0s27HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_Password(String)
                                        get_RememberMe()250%271271272min 0s25HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_RememberMe()
                                        set_RememberMe(Boolean)260%201201202min 0s26HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_RememberMe(Boolean)
                                        warning   Rule Violated:    Methods refactored should be tested

                                        4 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 methodsPercentage Coverage# lines of code (LOC)# lines of code not coveredDebtSeverityFull Name
                                        BuildModel(ModelBuilder)10%075075010min1HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.CatalogContextModelSnapshot .BuildModel(ModelBuilder)
                                        ConfirmEmail(String,String)00%171717min0HighMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                        .ctor(String)30%232323min 46s3HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                        SignOut()20%323232min 53s2HighMicrosoft.eShopWeb.Web.Controllers .AccountController.SignOut()
                                        warning   Rule Violated:    Assemblies Namespaces and Types should be tested

                                        21 code elements parent matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        21 code elements parent# lines of code not coveredDebtSeverityFull Name
                                        CheckoutModel0427064min 0s06LowMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                        Microsoft.eShopWeb.Web.HealthChecks0522054min 0s05LowMicrosoft.eShopWeb.Web.HealthChecks
                                        ResetPasswordViewModel128074min 0s07LowMicrosoft.eShopWeb.Web.ViewModels .Account.ResetPasswordViewModel
                                        LoginWith2faViewModel136094min 0s09LowMicrosoft.eShopWeb.Web.ViewModels .Account.LoginWith2faViewModel
                                        RegisterViewModel146084min 0s08LowMicrosoft.eShopWeb.Web.ViewModels .Account.RegisterViewModel
                                        LoginModel+InputModel156014min 0s01LowMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel
                                        ErrorModel164004min 0s00LowMicrosoft.eShopWeb.Web.Pages.ErrorModel
                                        Microsoft.eShopWeb.Infrastructure.Data .Migrations00279024min 0s02LowMicrosoft.eShopWeb.Infrastructure.Data .Migrations
                                        Microsoft.eShopWeb.Infrastructure .Identity.Migrations01190044min 0s04LowMicrosoft.eShopWeb.Infrastructure .Identity.Migrations
                                        ManageController02189034min 0s03LowMicrosoft.eShopWeb.Web.Controllers .ManageController
                                        Microsoft.eShopWeb.Web.ViewModels.Manage0350104min 0s10LowMicrosoft.eShopWeb.Web.ViewModels.Manage
                                        OrderService0617174min 0s17LowMicrosoft.eShopWeb.ApplicationCore .Services.OrderService
                                        OrderController0715164min 0s16LowMicrosoft.eShopWeb.Web.Controllers .OrderController
                                        Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate0814184min 0s18LowMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
                                        OrderViewModel0913204min 0s20LowMicrosoft.eShopWeb.Web.ViewModels .OrderViewModel
                                        Microsoft.eShopWeb.Web.Views.Manage1012194min 0s19LowMicrosoft.eShopWeb.Web.Views.Manage
                                        OrderItemViewModel1112124min 0s12LowMicrosoft.eShopWeb.Web.ViewModels .OrderItemViewModel
                                        CustomerOrdersWithItemsSpecification173114min 0s11LowMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification
                                        Microsoft.AspNetCore.Mvc182134min 0s13LowMicrosoft.AspNetCore.Mvc
                                        Microsoft.eShopWeb.Infrastructure .Services201154min 0s15LowMicrosoft.eShopWeb.Infrastructure .Services
                                        EmailSenderExtensions191144min 0s14LowMicrosoft.eShopWeb.Web.Services .EmailSenderExtensions

                                        Statistics

                                        Stat   # lines of code not covered   Debt   Severity
                                        Sum:8771h 24min-
                                        Average:41.764min 0s-
                                        Minimum:14min 0s-
                                        Maximum:2794min 0s-
                                        Standard deviation:750min 0s-
                                        Variance:5 6250min 0s-
                                        warning   Rule Violated:    Types almost 100% tested should be 100% tested

                                        2 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 typesPercentage Coverage# lines of code (LOC)# lines of code not coveredmethodsCulpritDebtSeverityFull Name
                                        Order096.15%1261111 method12min 0s0HighMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order
                                        CatalogContext195.83%0480202 methods02min 56s1HighMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext
                                        warning   Rule Violated:    Namespaces almost 100% tested should be 100% tested

                                        1 namespace matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 namespacePercentage Coverage# lines of code (LOC)# lines of code not coveredmethodsCulpritDebtSeverityFull Name
                                        Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate098.53%0680101 method02min 0s0HighMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate
                                        warning   Rule Violated:    Types 100% covered should be tagged with FullCoveredAttribute

                                        27 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        27 types# lines of code (LOC)DebtSeverityFull Name
                                        BasketWithItemsSpecification144093min 0s09LowMicrosoft.eShopWeb.ApplicationCore .Specifications .BasketWithItemsSpecification
                                        CatalogFilterPaginatedSpecification182083min 0s08LowMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterPaginatedSpecification
                                        Address0217073min 0s07LowMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Address
                                        CatalogItemOrdered0414123min 0s12LowMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate .CatalogItemOrdered
                                        OrderItem0911113min 0s11LowMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.OrderItem
                                        Basket0811103min 0s10LowMicrosoft.eShopWeb.ApplicationCore .Entities.BasketAggregate.Basket
                                        AppIdentityDbContext232063min 0s06LowMicrosoft.eShopWeb.Infrastructure .Identity.AppIdentityDbContext
                                        AppIdentityDbContextSeed242023min 0s02LowMicrosoft.eShopWeb.Infrastructure .Identity.AppIdentityDbContextSeed
                                        EfRepository<T>0514013min 0s01LowMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>
                                        OrderRepository212003min 0s00LowMicrosoft.eShopWeb.Infrastructure.Data .OrderRepository
                                        BasketViewModelService0128053min 0s05LowMicrosoft.eShopWeb.Web.Services .BasketViewModelService
                                        CatalogViewModelService0039043min 0s04LowMicrosoft.eShopWeb.Web.Services .CatalogViewModelService
                                        IndexModel126033min 0s03LowMicrosoft.eShopWeb.Web.Pages.IndexModel
                                        IdentityHostingStartup251133min 0s13LowMicrosoft.eShopWeb.Web.Areas.Identity .IdentityHostingStartup
                                        CatalogSettings222233min 0s23LowMicrosoft.eShopWeb.CatalogSettings
                                        CatalogFilterSpecification261223min 0s22LowMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterSpecification
                                        UriComposer153213min 0s21LowMicrosoft.eShopWeb.ApplicationCore .Services.UriComposer
                                        BaseEntity172263min 0s26LowMicrosoft.eShopWeb.ApplicationCore .Entities.BaseEntity
                                        CatalogBrand162253min 0s25LowMicrosoft.eShopWeb.ApplicationCore .Entities.CatalogBrand
                                        CatalogItem0316243min 0s24LowMicrosoft.eShopWeb.ApplicationCore .Entities.CatalogItem
                                        CatalogType202203min 0s20LowMicrosoft.eShopWeb.ApplicationCore .Entities.CatalogType
                                        BasketItem116163min 0s16LowMicrosoft.eShopWeb.ApplicationCore .Entities.BasketAggregate.BasketItem
                                        BasketComponentViewModel192153min 0s15LowMicrosoft.eShopWeb.Web.ViewModels .BasketComponentViewModel
                                        CatalogIndexViewModel0712143min 0s14LowMicrosoft.eShopWeb.Web.ViewModels .CatalogIndexViewModel
                                        CatalogItemViewModel108193min 0s19LowMicrosoft.eShopWeb.Web.ViewModels .CatalogItemViewModel
                                        PaginationInfoViewModel0612183min 0s18LowMicrosoft.eShopWeb.Web.ViewModels .PaginationInfoViewModel
                                        CatalogController135173min 0s17LowMicrosoft.eShopWeb.Web.Controllers.Api .CatalogController
                                        warning   Rule Violated:    Methods should have a low C.R.A.P score

                                        4 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 methodsCRAPCCPercentage Coverage# lines of code (LOC)DebtSeverityFull Name
                                        OnPostAsync(String)3423610%314310min1HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                        Up(MigrationBuilder)124011500%033122min0HighMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Up (MigrationBuilder)
                                        Up(MigrationBuilder)024001530%132022min3HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Up(MigrationBuilder)
                                        Index(IndexViewModel)2562720%217211min2HighMicrosoft.eShopWeb.Web.Controllers .ManageController.Index(IndexViewModel)

                                        Dead Code
                                        310

                                        warning   Rule Violated:    Potentially Dead Methods

                                        4 methods matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 methodsdepthMethodsCallingMeDebtAnnual InterestFull Name
                                        .ctor()101no method110min19minMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Address..ctor()
                                        .ctor()000no method010min29minMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate .CatalogItemOrdered..ctor()
                                        .ctor()303no method310min011minMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order..ctor()
                                        .ctor()202no method210min39minMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.OrderItem..ctor ()

                                        Visibility
                                        910

                                        warning   Rule Violated:    Avoid publicly visible constant fields

                                        3 fields matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        3 fieldsDebtSeverityFull Name
                                        ITEMS_PER_PAGE00min 30s0MediumMicrosoft.eShopWeb.Web.Constants .ITEMS_PER_PAGE
                                        DEFAULT_USERNAME10min 30s1MediumMicrosoft.eShopWeb.Web.Constants .DEFAULT_USERNAME
                                        BASKET_COOKIENAME20min 30s2MediumMicrosoft.eShopWeb.Web.Constants .BASKET_COOKIENAME

                                        Immutability
                                        920

                                        warning   Rule Violated:    Fields should be marked as ReadOnly when possible

                                        1 field matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 fieldMethodsReadingMeButNotAssigningMeMethodsAssigningMeDebtSeverityFull Name
                                        _paymentMethods02 methods0no method05min0MediumMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer ._paymentMethods
                                        warning   Rule Violated:    Do not declare read only mutable reference types

                                        1 field matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 fieldFieldTypeFieldVisibilityDebtSeverityFull Name
                                        _dbContextCatalogContext0Protected03min 0s0LowMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>._dbContext

                                        Naming Conventions
                                        1631

                                        warning   Rule Violated:    Static fields naming convention

                                        4 fields matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 fieldsSize of instanceDebtSeverityFull Name
                                        _brandsKey1N/A13min 0s1MediumMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService ._brandsKey
                                        _typesKey0N/A03min 0s0MediumMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService._typesKey
                                        _itemsKeyTemplate3N/A33min 0s3MediumMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService ._itemsKeyTemplate
                                        _defaultCacheDuration2N/A23min 0s2MediumMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService ._defaultCacheDuration
                                        warningCritical   Critical Rule Violated:    Avoid having different types with same name

                                        1 type matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 typetypesDebtSeverityFull Name
                                        Basket02 types010min0HighMicrosoft.eShopWeb.ApplicationCore .Entities.BasketAggregate.Basket
                                        warning   Rule Violated:    Avoid prefixing type name with parent namespace name

                                        4 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 typesnamespaceNameDebtSeverityFull Name
                                        BasketItemViewModelBasket110min1MediumMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel
                                        BasketViewModelBasket010min0MediumMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel
                                        IdentityHostingStartupIdentity310min3MediumMicrosoft.eShopWeb.Web.Areas.Identity .IdentityHostingStartup
                                        ManageNavPagesManage210min2MediumMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages
                                        warning   Rule Violated:    Avoid naming types and namespaces with the same identifier

                                        2 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 typesnamespacesDebtSeverityFull Name
                                        Basket01 namespace012min0HighMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket
                                        Basket11 namespace112min1HighMicrosoft.eShopWeb.ApplicationCore .Entities.BasketAggregate.Basket

                                        Source Files Organization
                                        330

                                        warning   Rule Violated:    Namespace name should correspond to file location

                                        4 types matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        4 typesdirShouldContainsourceFilePathnbSourceDeclConcernedjustACaseSensitiveIssueDebtSeverityFull Name
                                        BasketGuards GuardClausesC:\My\NDepend\Tests\On_eShopOnWeb\3Apr2019\src\ApplicationCore\Exceptions\GuardExtensions.cs11False13min 0s1MediumArdalis.GuardClauses.BasketGuards
                                        CatalogSettings eShopWebC:\My\NDepend\Tests\On_eShopOnWeb\3Apr2019\src\ApplicationCore\CatalogSettings.cs01False03min 0s0MediumMicrosoft.eShopWeb.CatalogSettings
                                        UrlHelperExtensions AspNetCore MvcC:\My\NDepend\Tests\On_eShopOnWeb\3Apr2019\src\Web\Extensions\UrlHelperExtensions.cs31False33min 0s3MediumMicrosoft.AspNetCore.Mvc .UrlHelperExtensions
                                        EmailSenderExtensions Web ServicesC:\My\NDepend\Tests\On_eShopOnWeb\3Apr2019\src\Web\Extensions\EmailSenderExtensions.cs21False23min 0s2MediumMicrosoft.eShopWeb.Web.Services .EmailSenderExtensions
                                        warning   Rule Violated:    Types with source files stored in the same directory, should be declared in the same namespace

                                        2 namespaces matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        2 namespacestypesOutOfMainNamespacetypesInMainNamespaceDebtSeverityFull Name
                                        Ardalis.GuardClauses01 type01 type07min0HighArdalis.GuardClauses
                                        Microsoft.AspNetCore.Mvc11 type11 type17min1HighMicrosoft.AspNetCore.Mvc
                                        warning   Rule Violated:    Types declared in the same namespace, should have their source files stored in the same directory

                                        1 namespace matched

                                        • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                        1 namespacetypesDeclaredOutOfMainDirmainDirtypesDeclaredInMainDirDebtSeverityFull Name
                                        Microsoft.eShopWeb.Web.Services01 typeC:\My\NDepend\Tests\On_eShopOnWeb\3Apr2019\src\Web\Services03 types07min0HighMicrosoft.eShopWeb.Web.Services

                                        This group contains children groups
                                        .NET Framework Usage
                                        2320

                                          System
                                          910

                                          warning   Rule Violated:    Do not raise too general exception types

                                          21 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          21 methodsexceptionsCreatedDebtSeverityFull Name
                                          LoginWith2fa(Boolean,String)061 type0620min06HighMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa(Boolean ,String)
                                          LoginWith2fa(LoginWith2faViewModel ,Boolean,String)051 type0520min05HighMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa (LoginWith2faViewModel,Boolean,String)
                                          ConfirmEmail(String,String)071 type0720min07HighMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                          ResetPassword(String)091 type0920min09HighMicrosoft.eShopWeb.Web.Controllers .AccountController.ResetPassword(String)
                                          MyAccount()081 type0820min08HighMicrosoft.eShopWeb.Web.Controllers .ManageController.MyAccount()
                                          Index(IndexViewModel)011 type0120min01HighMicrosoft.eShopWeb.Web.Controllers .ManageController.Index(IndexViewModel)
                                          SendVerificationEmail(IndexViewModel)001 type0020min00HighMicrosoft.eShopWeb.Web.Controllers .ManageController.SendVerificationEmail (IndexViewModel)
                                          ChangePassword()021 type0220min02HighMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword()
                                          ChangePassword(ChangePasswordViewModel)041 type0420min04HighMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword (ChangePasswordViewModel)
                                          SetPassword()031 type0320min03HighMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword()
                                          SetPassword(SetPasswordViewModel)101 type1020min10HighMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword (SetPasswordViewModel)
                                          ExternalLogins()171 type1720min17HighMicrosoft.eShopWeb.Web.Controllers .ManageController.ExternalLogins()
                                          LinkLoginCallback()161 type1620min16HighMicrosoft.eShopWeb.Web.Controllers .ManageController.LinkLoginCallback()
                                          RemoveLogin(RemoveLoginViewModel)181 type1820min18HighMicrosoft.eShopWeb.Web.Controllers .ManageController.RemoveLogin (RemoveLoginViewModel)
                                          TwoFactorAuthentication()201 type2020min20HighMicrosoft.eShopWeb.Web.Controllers .ManageController .TwoFactorAuthentication()
                                          Disable2faWarning()191 type1920min19HighMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2faWarning()
                                          Disable2fa()121 type1220min12HighMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2fa()
                                          EnableAuthenticator()111 type1120min11HighMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator()
                                          EnableAuthenticator (EnableAuthenticatorViewModel)131 type1320min13HighMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator (EnableAuthenticatorViewModel)
                                          ResetAuthenticator()151 type1520min15HighMicrosoft.eShopWeb.Web.Controllers .ManageController.ResetAuthenticator()
                                          GenerateRecoveryCodes()141 type1420min14HighMicrosoft.eShopWeb.Web.Controllers .ManageController.GenerateRecoveryCodes( )

                                          System.Collections
                                          010

                                          warning   Rule Violated:    Collection properties should be read only

                                          3 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          3 methodsCollectionTypeDebtSeverityFull Name
                                          set_ExternalLogins(IList <AuthenticationScheme>)IList<T>010min0MediumMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel .set_ExternalLogins(IList <AuthenticationScheme>)
                                          set_CurrentLogins(IList<UserLoginInfo>)IList<T>110min1MediumMicrosoft.eShopWeb.Web.ViewModels.Manage .ExternalLoginsViewModel .set_CurrentLogins(IList<UserLoginInfo>)
                                          set_OtherLogins(IList <AuthenticationScheme>)IList<T>210min2MediumMicrosoft.eShopWeb.Web.ViewModels.Manage .ExternalLoginsViewModel.set_OtherLogins (IList<AuthenticationScheme>)

                                          Hot Spots

                                          ok   Code Query:    Types Hot Spots

                                          70 types matched

                                          70 typesDebtIssuesAnnual InterestBreaking Point# lines of code (LOC)DebtRatingDebtRatioFull Name
                                          ManageController002d 2h0047 issues001d 0h11839d0018905E0458.21Microsoft.eShopWeb.Web.Controllers .ManageController
                                          InitialIdentityModel017h 40min344 issues2542min003 945d0211520D0844.42Microsoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel
                                          Initial027h 37min324 issues2443min013 864d0111721D0943.42Microsoft.eShopWeb.Infrastructure.Data .Migrations.Initial
                                          AccountController035h 51min0118 issues062h 30min09849d047722D1042.81Microsoft.eShopWeb.Web.Controllers .AccountController
                                          AddExtraConstraints044h 22min159 issues014h 13min37377d038719D1833.07Microsoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints
                                          LoginModel052h 23min1210 issues052h 32min38343d083116D1633.97Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel
                                          CheckoutModel061h 55min0216 issues023h 23min48208d102717D1931.89Microsoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                          BasketService071h 26min354 issues3028min081 085d064434C3218.11Microsoft.eShopWeb.ApplicationCore .Services.BasketService
                                          OrderController081h 23min236 issues2346min13652d181518D0648.39Microsoft.eShopWeb.Web.Controllers .OrderController
                                          BaseSpecification<T>091h 21min1110 issues092h 4min43236d122535C3317.71Microsoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T>
                                          EfRepository<T>101h 16min139 issues072h 20min49198d221424D1435.19Microsoft.eShopWeb.Infrastructure.Data .EfRepository<T>
                                          ApiHealthCheck1149min285 issues111h 45min54173d271225D1733.95Microsoft.eShopWeb.Web.HealthChecks .ApiHealthCheck
                                          CachedCatalogViewModelService1247min169 issues101h 52min57154d161733C3018.94Microsoft.eShopWeb.Web.Services .CachedCatalogViewModelService
                                          HomePageHealthCheck1344min275 issues121h 44min56155d301007D1236.95Microsoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck
                                          LoginModel+InputModel1441min0315 issues033h 14min6778d37608D2128.45Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel
                                          OrderService1541min403 issues566min052 352d151706D2720.67Microsoft.eShopWeb.ApplicationCore .Services.OrderService
                                          ManageNavPages1639min0612 issues191h 2min44230d251238C2919.14Microsoft.eShopWeb.Web.Views.Manage .ManageNavPages
                                          SpecificationEvaluator<T>1738min433 issues171h 18min53178d211415D2226.26Microsoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                          ExternalLoginsViewModel1838min0910 issues4120min12700d34813D2820.19Microsoft.eShopWeb.Web.ViewModels.Manage .ExternalLoginsViewModel
                                          CustomerOrdersWithItemsSpecification1936min295 issues201h 2min46212d52300E0384.61Microsoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification
                                          Program2036min661 issue614min 3s033 251d231311D2524.62Microsoft.eShopWeb.Web.Program
                                          OrderViewModel2133min0414 issues3126min21475d241336C4511.88Microsoft.eShopWeb.Web.ViewModels .OrderViewModel
                                          ErrorModel2233min0810 issues042h 34min6678d50412D1535.11Microsoft.eShopWeb.Web.Pages.ErrorModel
                                          BasketItemViewModel2332min188 issues082h 8min6393d191437C4910.29Microsoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel
                                          CatalogContextSeed2432min681 issue556min061 824d131929C3815.2Microsoft.eShopWeb.Infrastructure.Data .CatalogContextSeed
                                          IndexModel2532min305 issues141h 28min59133d073157B598Microsoft.eShopWeb.Web.Pages.Basket .IndexModel
                                          OrderItemViewModel2631min0513 issues3224min20480d261230C4711.42Microsoft.eShopWeb.Web.ViewModels .OrderItemViewModel
                                          Basket2729min443 issues161h 22min60132d171632C3914.99Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket
                                          Order2829min314 issues131h 34min61115d112661B588.4Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order
                                          Basket2925min453 issues2840min45228d281131C3715.23Microsoft.eShopWeb.ApplicationCore .Entities.BasketAggregate.Basket
                                          BasketViewModel3024min334 issues151h 24min62105d32939C4113.39Microsoft.eShopWeb.Web.Pages.Basket .BasketViewModel
                                          BasketViewModelService3123min463 issues2740min47209d092860B617.19Microsoft.eShopWeb.Web.Services .BasketViewModelService
                                          IndexViewModel3222min1010 issues3720min29419d311059B519.85Microsoft.eShopWeb.Web.ViewModels.Manage .IndexViewModel
                                          ResetPasswordViewModel3322min149 issues4318min23448d33847C4611.78Microsoft.eShopWeb.Web.ViewModels .Account.ResetPasswordViewModel
                                          Buyer3421min246 issues4218min35414d35849C3615.25Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer
                                          IOrderRepository3520min612 issues2640min50182d66N/A04E01115.74Microsoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository
                                          IAggregateRoot3619min671 issue692min 0s023 467d65N/A03E00219.91Microsoft.eShopWeb.ApplicationCore .Interfaces.IAggregateRoot
                                          ChangePasswordViewModel3718min178 issues4416min26419d36858B529.67Microsoft.eShopWeb.Web.ViewModels.Manage .ChangePasswordViewModel
                                          LoginWith2faViewModel3917min207 issues5012min16541d44642C4312.11Microsoft.eShopWeb.Web.ViewModels .Account.LoginWith2faViewModel
                                          RegisterViewModel3817min197 issues4912min15541d43641C4412.11Microsoft.eShopWeb.Web.ViewModels .Account.RegisterViewModel
                                          PaymentMethod4015min217 issues4514min36411d38640C4810.75Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod
                                          CatalogContext4115min0711 issues2940min58141d054868A682.34Microsoft.eShopWeb.Infrastructure.Data .CatalogContext
                                          IBasketViewModelService4215min641 issue221h 1min6589d67N/A01E0286.81Microsoft.eShopWeb.Web.Interfaces .IBasketViewModelService
                                          EnableAuthenticatorViewModel4513min226 issues4712min32419d42665B559.39Microsoft.eShopWeb.Web.ViewModels.Manage .EnableAuthenticatorViewModel
                                          SetPasswordViewModel4413min256 issues4612min30419d40662B539.39Microsoft.eShopWeb.Web.ViewModels.Manage .SetPasswordViewModel
                                          TwoFactorAuthenticationViewModel4313min266 issues4812min31419d39663B549.39Microsoft.eShopWeb.Web.ViewModels.Manage .TwoFactorAuthenticationViewModel
                                          BasketWithItemsSpecification5113min542 issues3520min40237d49414D2621.49Microsoft.eShopWeb.ApplicationCore .Specifications .BasketWithItemsSpecification
                                          CatalogFilterSpecification5013min552 issues3920min41237d60102E0550.15Microsoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterSpecification
                                          Address5313min472 issues539min18527d141769A674.3Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Address
                                          CatalogItemOrdered5213min502 issues529min19527d201464B655.79Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate .CatalogItemOrdered
                                          OrderItem4713min492 issues519min17527d291156B636.54Microsoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.OrderItem
                                          OrderRepository4613min562 issues3420min42237d56209D2030.09Microsoft.eShopWeb.Infrastructure.Data .OrderRepository
                                          CatalogController4913min602 issues3320min39237d45548C3516.72Microsoft.eShopWeb.Web.Controllers.Api .CatalogController
                                          IdentityHostingStartup4813min572 issues662min 0s042 372d59110D1137.62Microsoft.eShopWeb.Web.Areas.Identity .IdentityHostingStartup
                                          SlugifyParameterTransformer5412min582 issues211h 2min6876d51326D2425.05Microsoft.eShopWeb.Web .SlugifyParameterTransformer
                                          PrivacyModel5512min393 issues181h 4min6971d63028D0748.23Microsoft.eShopWeb.Web.Pages .PrivacyModel
                                          IAsyncRepository<T>5710min691 issue3620min52182d68N/A43C4014.47Microsoft.eShopWeb.ApplicationCore .Interfaces.IAsyncRepository<T>
                                          ISpecification<T>5610min631 issue4020min51182d69N/A44C4212.86Microsoft.eShopWeb.ApplicationCore .Interfaces.ISpecification<T>
                                          EmailSenderExtensions589min383 issues624min 0s10848d61127D1335.87Microsoft.eShopWeb.Web.Services .EmailSenderExtensions
                                          RemoveLoginViewModel599min364 issues548min27419d48452B578.87Microsoft.eShopWeb.Web.ViewModels.Manage .RemoveLoginViewModel
                                          CatalogFilterPaginatedSpecification609min592 issues3820min55164d53223D2326.04Microsoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterPaginatedSpecification
                                          UrlHelperExtensions617min413 issues586min22462d55245C3417.58Microsoft.AspNetCore.Mvc .UrlHelperExtensions
                                          BasketNotFoundException627min423 issues576min24433d47454B569.16Microsoft.eShopWeb.ApplicationCore .Exceptions.BasketNotFoundException
                                          BasketGuards636min482 issues604min 12s14551d54246C3118.39Ardalis.GuardClauses.BasketGuards
                                          CatalogSettings646min512 issues682min 0s071 095d58253B509.92Microsoft.eShopWeb.CatalogSettings
                                          LoggerAdapter<T>664min 35s522 issues634min 0s25419d46455B645.91Microsoft.eShopWeb.Infrastructure .Logging.LoggerAdapter<T>
                                          GenerateRecoveryCodesViewModel654min 35s532 issues644min 0s33419d57250B607.6Microsoft.eShopWeb.Web.ViewModels.Manage .GenerateRecoveryCodesViewModel
                                          EmailSender682min 17s651 issue672min 0s34419d62151B626.65Microsoft.eShopWeb.Infrastructure .Services.EmailSender
                                          LoginViewModel672min 17s621 issue652min 0s28419d41667A691.56Microsoft.eShopWeb.Web.ViewModels .Account.LoginViewModel
                                          Constants691min 30s373 issues596min6491d64066A664.34Microsoft.eShopWeb.Web.Constants

                                          Statistics

                                          Stat   Debt   Issues   Annual Interest   Breaking Point   # lines of code (LOC)   DebtRating   DebtRatio
                                          Sum:9d 2h4117d 7h43 461d1 242-1 832
                                          Average:1h 3min5.8754min620d19.11-26.17
                                          Minimum:1min 30s12min 0s71d0-1.56
                                          Maximum:2d 2h471d 0h3 945d189-219.91
                                          Standard deviation:2h 34min6.41h 15min862d31.83-30.98
                                          Variance:2 988d40.91719doverflow1 013-959.99
                                          ok   Code Query:    Types to Fix Priority

                                          27 types matched

                                          27 typesBreaking PointDebtAnnual InterestIssues# lines of code (LOC)DebtRatingDebtRatioFull Name
                                          LoginModel+InputModel2678d1441min033h 14min0315 issues24607D1328.45Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel
                                          ErrorModel2578d2233min042h 34min0810 issues25406D0835.11Microsoft.eShopWeb.Web.Pages.ErrorModel
                                          BasketItemViewModel2493d2332min082h 8min148 issues141420C2510.29Microsoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel
                                          IndexModel23133d2532min131h 28min185 issues073126B268Microsoft.eShopWeb.Web.Pages.Basket .IndexModel
                                          CachedCatalogViewModelService22154d1247min101h 52min119 issues121718C1918.94Microsoft.eShopWeb.Web.Services .CachedCatalogViewModelService
                                          HomePageHealthCheck21155d1344min121h 44min175 issues221008D0636.95Microsoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck
                                          ApiHealthCheck20173d1149min111h 45min165 issues201210D1033.95Microsoft.eShopWeb.Web.HealthChecks .ApiHealthCheck
                                          SpecificationEvaluator<T>19178d1738min141h 18min243 issues161409D1426.26Microsoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                          EfRepository<T>18198d101h 16min072h 20min139 issues151405D0735.19Microsoft.eShopWeb.Infrastructure.Data .EfRepository<T>
                                          CheckoutModel17208d061h 55min023h 23min0216 issues082702D1231.89Microsoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                          CustomerOrdersWithItemsSpecification16212d1936min161h 2min195 issues26301E0084.61Microsoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification
                                          ManageNavPages15230d1639min151h 2min0612 issues191221C1819.14Microsoft.eShopWeb.Web.Views.Manage .ManageNavPages
                                          BaseSpecification<T>14236d091h 21min092h 4min0910 issues092522C2117.71Microsoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T>
                                          LoginModel13343d052h 23min052h 32min0710 issues063103D0933.97Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel
                                          AddExtraConstraints12377d044h 22min014h 13min129 issues038704D1133.07Microsoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints
                                          OrderViewModel11475d2133min2126min0414 issues171325C2311.88Microsoft.eShopWeb.Web.ViewModels .OrderViewModel
                                          OrderItemViewModel10480d2631min2224min0513 issues211223C2411.42Microsoft.eShopWeb.Web.ViewModels .OrderItemViewModel
                                          OrderController09652d081h 23min1746min156 issues131515D0248.39Microsoft.eShopWeb.Web.Controllers .OrderController
                                          ExternalLoginsViewModel08700d1838min2320min1010 issues23812D1720.19Microsoft.eShopWeb.Web.ViewModels.Manage .ExternalLoginsViewModel
                                          ManageController07839d002d 2h001d 0h0047 issues0018900E0158.21Microsoft.eShopWeb.Web.Controllers .ManageController
                                          AccountController06849d035h 51min062h 30min0118 issues047711D0542.81Microsoft.eShopWeb.Web.Controllers .AccountController
                                          BasketService051 085d071h 26min2028min214 issues054424C2018.11Microsoft.eShopWeb.ApplicationCore .Services.BasketService
                                          CatalogContextSeed041 824d2432min246min251 issue101919C2215.2Microsoft.eShopWeb.Infrastructure.Data .CatalogContextSeed
                                          OrderService032 352d1541min256min233 issues111713D1620.67Microsoft.eShopWeb.ApplicationCore .Services.OrderService
                                          Program023 251d2036min264min 3s261 issue181314D1524.62Microsoft.eShopWeb.Web.Program
                                          Initial013 864d027h 37min1843min224 issues0111716D0443.42Microsoft.eShopWeb.Infrastructure.Data .Migrations.Initial
                                          InitialIdentityModel003 945d017h 40min1942min204 issues0211517D0344.42Microsoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel

                                          Statistics

                                          Stat   Breaking Point   Debt   Annual Interest   Issues   # lines of code (LOC)   DebtRating   DebtRatio
                                          Sum:23 175d8d 0h5d 7h256946-812.88
                                          Average:858d2h 22min1h 45min9.4835.04-30.11
                                          Minimum:78d31min4min 3s13-8
                                          Maximum:3 945d2d 2h1d 0h47189-84.61
                                          Standard deviation:1 133d3h 47min1h 38min8.6243.44-16.49
                                          Variance:overflow6 468d1 223d74.321 887-271.84
                                          ok   Code Query:    Issues to Fix Priority

                                          472 issues matched

                                          472 issuesDebtAnnual InterestBreaking PointCodeElementFull Name
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Up(MigrationBuilder )0445min0141h 0min09830dUp(MigrationBuilder)Rule violated: From now, all methods added should respect basic quality principles
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Down (MigrationBuilder)0455min0151h 0min09930dDown(MigrationBuilder)Rule violated: From now, all methods added should respect basic quality principles
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T>.set_OrderBy (Expression<Func<T,Object>>)0812min 0s03420min08236dset_OrderBy(Expression<Func<T,Object>>)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)0852min 0s03320min08136dset_OrderByDescending(Expression<Func<T,Object>>)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T>.ApplyOrderBy (Expression<Func<T,Object>>)0732min 0s03820min08036dApplyOrderBy(Expression<Func<T,Object>>)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)0742min 0s03720min08536dApplyOrderByDescending(Expression<Func<T,Object>>)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.get_RequestId()0712min 0s03620min08436dget_RequestId()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.set_RequestId(String)0722min 0s02920min08336dset_RequestId(String)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.get_ShowRequestId()0772min 0s02820min07636dget_ShowRequestId()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.OnGet()0782min 0s02720min07536dOnGet()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel .get_CatalogItemId()0752min 0s03220min07436dget_CatalogItemId()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel .get_OldUnitPrice()0762min 0s03120min07936dget_OldUnitPrice()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel .set_OldUnitPrice(Decimal)0652min 0s03020min07836dset_OldUnitPrice(Decimal)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketViewModel .get_BuyerId()0662min 0s04720min07736dget_BuyerId()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .get_BasketModel()0632min 0s04620min09436dget_BasketModel()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .set_BasketModel(BasketViewModel)0642min 0s04520min09336dset_BasketModel(BasketViewModel)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel .set_Input(LoginModel+InputModel)0692min 0s05020min09236dset_Input(LoginModel+InputModel)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel .get_ExternalLogins()0702min 0s04920min09736dget_ExternalLogins()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.get_Email()0672min 0s04820min09636dget_Email()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.set_Email(String)0682min 0s04120min09536dset_Email(String)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.get_Password()0792min 0s04020min08836dget_Password()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.set_Password (String)0842min 0s03920min08736dset_Password(String)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.get_RememberMe()0822min 0s04420min08636dget_RememberMe()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel.set_RememberMe (Boolean)0862min 0s04320min09136dset_RememberMe(Boolean)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Entities.OrderAggregate .Order0832min 0s04220min09036dOrderRule violated: Types almost 100% tested should be 100% tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Entities.OrderAggregate0802min 0s02620min08936dMicrosoft.eShopWeb.ApplicationCore.Entities.OrderAggregateRule violated: Namespaces almost 100% tested should be 100% tested
                                          High issue on: Microsoft.eShopWeb.Web .HealthChecks.HomePageHealthCheck..ctor (IHttpContextAccessor)0532min 53s01920min07252d.ctor(IHttpContextAccessor)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Controllers.AccountController.SignOut()0542min 53s02020min07352dSignOut()Rule violated: Methods refactored should be tested
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext0522min 56s02120min07153dCatalogContextRule violated: Types almost 100% tested should be 100% tested
                                          High issue on: Microsoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>02410min0081h 0min06060dSpecificationEvaluator<T>Rule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints02510min0071h 0min06160dAddExtraConstraintsRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .SlugifyParameterTransformer02710min0091h 0min06260dSlugifyParameterTransformerRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .HealthChecks.ApiHealthCheck02810min0111h 0min05960dApiHealthCheckRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .HealthChecks.HomePageHealthCheck02610min0101h 0min05660dHomePageHealthCheckRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogViewModelService01510min0031h 0min05760dCachedCatalogViewModelServiceRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web.Pages.ErrorModel00510min0021h 0min05860dErrorModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Pages.PrivacyModel00410min0051h 0min06360dPrivacyModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketItemViewModel00810min0041h 0min06860dBasketItemViewModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.BasketViewModel01210min0061h 0min06960dBasketViewModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel01310min0121h 0min07060dCheckoutModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.IndexModel01410min0161h 0min06760dIndexModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Shared.Components.BasketComponent .Basket00910min0171h 0min06460dBasketRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account.LoginModel01010min0181h 0min06560dLoginModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .Areas.Identity.Pages.Account .LoginModel+InputModel01110min0131h 0min06660dLoginModel+InputModelRule violated: From now, all types added should be 100% covered by tests
                                          High issue on: Microsoft.eShopWeb.Web .HealthChecks.ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)0513min 46s02320min05268d.ctor(IHttpContextAccessor,LinkGenerator)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogViewModelService .GetBrands()0493min 46s02220min05168dGetBrands()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Services.CachedCatalogViewModelService .GetTypes()0503min 46s02520min05368dGetTypes()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.IndexModel.OnPostUpdate (Dictionary<String,Int32>)0473min 46s02420min05568dOnPostUpdate(Dictionary<String,Int32>)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)0483min 46s05120min05468d.ctor(String)Rule violated: Methods refactored should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .SetBasketModelAsync()0464min 40s03520min05085dSetBasketModelAsync()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Interfaces.IBasketViewModelService00015min0001h 1min04989dIBasketViewModelServiceRule violated: Avoid namespaces mutually dependent
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Entities.OrderAggregate .Order00115min0011h 1min04889dOrderRule violated: Avoid namespaces mutually dependent
                                          Medium issue on: Microsoft.eShopWeb.Web .Pages.PrivacyModel.OnGet()0990min 30s0892min 0s04491dOnGet()Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel.OnGet()0950min 30s0912min 0s04391dOnGet()Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb.Web .Constants.BASKET_COOKIENAME0960min 30s0922min 0s04591dBASKET_COOKIENAMERule violated: Avoid publicly visible constant fields
                                          Medium issue on: Microsoft.eShopWeb.Web .Constants.ITEMS_PER_PAGE0970min 30s0872min 0s04791dITEMS_PER_PAGERule violated: Avoid publicly visible constant fields
                                          Medium issue on: Microsoft.eShopWeb.Web .Constants.DEFAULT_USERNAME0980min 30s0882min 0s04691dDEFAULT_USERNAMERule violated: Avoid publicly visible constant fields
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel.OnPost (Dictionary<String,Int32>)0425min07720min040101dOnPost(Dictionary<String,Int32>)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Controllers.ManageController.MyAccount( )0415min07320min041101dMyAccount()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Controllers.OrderController.MyOrders()0435min07020min042101dMyOrders()Rule violated: New Methods should be tested
                                          Medium issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T>.set_OrderBy (Expression<Func<T,Object>>)0552min 45s0799min038107dset_OrderBy(Expression<Func<T,Object>>)Rule violated: Code should be tested
                                          Medium issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)0562min 45s0809min039107dset_OrderByDescending(Expression<Func<T,Object>>)Rule violated: Code should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CatalogFilterPaginatedSpecification. .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)0406min07620min037109d.ctor(Int32,Int32,Nullable<Int32>,Nullable<Int32>)Rule violated: Constructor should not call a virtual method
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Up(MigrationBuilder )0396min06920min035117dUp(MigrationBuilder)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.Migrations .AddExtraConstraints.Down (MigrationBuilder)0386min07120min036117dDown(MigrationBuilder)Rule violated: New Methods should be tested
                                          High issue on: Ardalis.GuardClauses0367min07220min032127dArdalis.GuardClausesRule violated: Types with source files stored in the same directory, should be declared in the same namespace
                                          High issue on: Microsoft.AspNetCore.Mvc0347min07520min033127dMicrosoft.AspNetCore.MvcRule violated: Types with source files stored in the same directory, should be declared in the same namespace
                                          High issue on: Microsoft.eShopWeb.Web.Services0357min06820min034127dMicrosoft.eShopWeb.Web.ServicesRule violated: Types declared in the same namespace, should have their source files stored in the same directory
                                          Medium issue on: Microsoft.eShopWeb.Web .Views.Manage.ManageNavPages .get_ActivePageKey()0612min 17s0816min028128dget_ActivePageKey()Rule violated: Code should be tested
                                          Medium issue on: Microsoft.eShopWeb.Web .Views.Manage.ManageNavPages.get_Index()0622min 17s0826min027128dget_Index()Rule violated: Code should be tested
                                          Medium issue on: Microsoft.eShopWeb.Web .Views.Manage.ManageNavPages .get_ChangePassword()0572min 17s0836min026128dget_ChangePassword()Rule violated: Code should be tested
                                          Medium issue on: Microsoft.eShopWeb.Web .Views.Manage.ManageNavPages .get_ExternalLogins()0582min 17s0846min031128dget_ExternalLogins()Rule violated: Code should be tested
                                          Medium issue on: Microsoft.eShopWeb.Web .Views.Manage.ManageNavPages .get_TwoFactorAuthentication()0592min 17s0856min030128dget_TwoFactorAuthentication()Rule violated: Code should be tested
                                          Medium issue on: Microsoft.eShopWeb.Web .Pages.ErrorModel.get_RequestId()0602min 17s0866min029128dget_RequestId()Rule violated: Code should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Controllers.AccountController .ConfirmEmail(String,String)0337min05720min025133dConfirmEmail(String,String)Rule violated: Methods refactored should be tested
                                          Medium issue on: Microsoft.eShopWeb.Web .Views.Manage.ManageNavPages .PageNavClass(ViewContext,String)0376min07818min024135dPageNavClass(ViewContext,String)Rule violated: Code should be tested
                                          High issue on: Microsoft.eShopWeb.Web .HealthChecks.HomePageHealthCheck .CheckHealthAsync(HealthCheckContext ,CancellationToken)0308min05920min021150dCheckHealthAsync(HealthCheckContext,CancellationToken)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel..ctor (IBasketService,IBasketViewModelService ,IUriComposer,SignInManager <ApplicationUser>,IOrderService)0318min05820min022150d.ctor(IBasketService,IBasketViewModelService,IUriComposer,SignInManager<ApplicationUser>,IOrderService)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .Pages.Basket.CheckoutModel .GetOrSetBasketCookieAndUserName()0328min05320min023150dGetOrSetBasketCookieAndUserName()Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb.Web .HealthChecks.ApiHealthCheck .CheckHealthAsync(HealthCheckContext ,CancellationToken)0299min05220min020166dCheckHealthAsync(HealthCheckContext,CancellationToken)Rule violated: New Methods should be tested
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .BasketWithItemsSpecification00210min05520min006182dBasketWithItemsSpecificationRule violated: Avoid transforming an immutable type into a mutable one
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CatalogFilterSpecification00710min05420min005182dCatalogFilterSpecificationRule violated: Avoid transforming an immutable type into a mutable one
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Specifications .CustomerOrdersWithItemsSpecification00610min06520min007182dCustomerOrdersWithItemsSpecificationRule violated: Avoid transforming an immutable type into a mutable one
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigurateCatalogItemOrdered (EntityTypeBuilder<CatalogItemOrdered>)0901min 0s0902min 0s009182dConfigurateCatalogItemOrdered(EntityTypeBuilder<CatalogItemOrdered>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureAddress(EntityTypeBuilder <Address>)0881min 0s0952min 0s008182dConfigureAddress(EntityTypeBuilder<Address>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureBasket(EntityTypeBuilder <Basket>)0871min 0s0942min 0s001182dConfigureBasket(EntityTypeBuilder<Basket>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureCatalogItem(EntityTypeBuilder <CatalogItem>)0911min 0s0932min 0s000182dConfigureCatalogItem(EntityTypeBuilder<CatalogItem>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureCatalogBrand(EntityTypeBuilder <CatalogBrand>)0941min 0s0962min 0s002182dConfigureCatalogBrand(EntityTypeBuilder<CatalogBrand>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureCatalogType(EntityTypeBuilder <CatalogType>)0931min 0s0992min 0s004182dConfigureCatalogType(EntityTypeBuilder<CatalogType>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureOrder(EntityTypeBuilder<Order> )0891min 0s0982min 0s003182dConfigureOrder(EntityTypeBuilder<Order>)Rule violated: Methods should be declared static if possible
                                          Medium issue on: Microsoft.eShopWeb .Infrastructure.Data.CatalogContext .ConfigureOrderItem(EntityTypeBuilder <OrderItem>)0921min 0s0972min 0s016182dConfigureOrderItem(EntityTypeBuilder<OrderItem>)Rule violated: Methods should be declared static if possible
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Services.BasketService. .ctor(IAsyncRepository<Basket> ,IRepository<CatalogItem>,IUriComposer ,IAppLogger<BasketService>)01810min06420min015182dBasketServiceRule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .ApplicationCore.Interfaces .IOrderRepository.GetByIdWithItems(Int32 )01910min06720min017182dIOrderRepositoryRule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .GetById(Int32)01610min06620min019182dEfRepository<T>Rule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .GetSingleBySpec(ISpecification<T>)01710min06120min018182dEfRepository<T>Rule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .ListAll()02210min06020min011182dEfRepository<T>Rule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .List(ISpecification<T>)02310min06320min010182dEfRepository<T>Rule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T>.Add (T)02010min06220min012182dEfRepository<T>Rule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .Update(T)02110min05620min014182dEfRepository<T>Rule violated: API Breaking Changes: Methods
                                          High issue on: Microsoft.eShopWeb .Infrastructure.Data.EfRepository<T> .Delete(T)00310min07420min013182dEfRepository<T>Rule violated: API Breaking Changes: Methods

                                          Statistics

                                          Stat   Debt   Annual Interest   Breaking Point   CodeElement
                                          Sum:11d 4h8d 6h352 543d-
                                          Average:11min8min746d-
                                          Minimum:0min 30s0min 0s00:00:00-
                                          Maximum:3h 46min1h 1min7 775d-
                                          Standard deviation:27min13min1 365d-
                                          Variance:95d21doverflow-
                                          ok   Code Query:    Debt and Issues per Rule

                                          38 rules matched

                                          38 rulesIssuesDebtAnnual InterestBreaking PointCategoryFull Name
                                          Code should be tested00238 issues007d 0h021d 3h051 808dProject Rules \ Code CoverageRule
                                          Do not raise too general exception types0421 issues017h 0min037h 0min13365dProject Rules \ .NET Framework Usage \ SystemRule
                                          Avoid namespaces dependency cycles212 issues024h 0min1440min022 190dProject Rules \ ArchitectureRule
                                          API Breaking Changes: Types099 issues033h 0min053h 0min12365dProject Rules \ API Breaking ChangesRule
                                          New Methods should be tested0140 issues042h 40min011d 5h2873dProject Rules \ Code CoverageRule
                                          From now, all types added should be 100% covered by tests0515 issues062h 30min001d 7h2960dProject Rules \ Code Smells RegressionRule
                                          API Breaking Changes: Methods0615 issues052h 30min045h 0min19182dProject Rules \ API Breaking ChangesRule
                                          Avoid transforming an immutable type into a mutable one134 issues071h 30min101h 20min09410dProject Rules \ Code Smells RegressionRule
                                          Assemblies Namespaces and Types should be tested0321 issues081h 24min370min 0s3600:00:00Project Rules \ Code CoverageRule
                                          Types 100% covered should be tagged with FullCoveredAttribute0227 issues091h 21min350min 0s3500:00:00Project Rules \ Code CoverageRule
                                          Methods should have a low C.R.A.P score144 issues101h 6min091h 20min15302dProject Rules \ Code CoverageRule
                                          Avoid types with too many methods301 issue111h 6min293min 18s007 275dProject Rules \ Code SmellsRule
                                          Avoid namespaces with few types0713 issues121h 5min330min 0s3700:00:00Project Rules \ DesignRule
                                          Potentially Dead Methods124 issues1440min1738min10384dProject Rules \ Dead CodeRule
                                          Avoid prefixing type name with parent namespace name114 issues1340min238min041 825dProject Rules \ Naming ConventionsRule
                                          Avoid namespaces mutually dependent262 issues1730min062h 2min2789dProject Rules \ ArchitectureRule
                                          API Breaking Changes: Interfaces and Abstract Classes183 issues1630min111h 0min17182dProject Rules \ API Breaking ChangesRule
                                          Collection properties should be read only173 issues1530min266min031 825dProject Rules \ .NET Framework Usage \ System.CollectionsRule
                                          Methods refactored should be tested104 issues1824min081h 20min25109dProject Rules \ Code CoverageRule
                                          Avoid naming types and namespaces with the same identifier272 issues1924min1540min16219dProject Rules \ Naming ConventionsRule
                                          Avoid empty interfaces321 issue2019min312min 0s013 467dProject Rules \ Object Oriented DesignRule
                                          Constructor should not call a virtual method252 issues2118min1340min21164dProject Rules \ Object Oriented DesignRule
                                          Types with source files stored in the same directory, should be declared in the same namespace202 issues2214min1240min23127dProject Rules \ Source Files OrganizationRule
                                          Static fields naming convention154 issues2412min248min08547dProject Rules \ Naming ConventionsRule
                                          Namespace name should correspond to file location164 issues2312min258min07547dProject Rules \ Source Files OrganizationRule
                                          From now, all methods added should respect basic quality principles242 issues2710min072h 0min3230dProject Rules \ Code Smells RegressionRule
                                          Assemblies with poor cohesion (RelationalCohesion)361 issue2810min340min 0s3300:00:00Project Rules \ ArchitectureRule
                                          API Breaking Changes: Fields341 issue2510min1920min18182dProject Rules \ API Breaking ChangesRule
                                          Avoid having different types with same name331 issue2610min2120min20182dProject Rules \ Naming ConventionsRule
                                          Methods should be declared static if possible0810 issues299min1820min22164dProject Rules \ Object Oriented DesignRule
                                          Types declared in the same namespace, should have their source files stored in the same directory351 issue307min2020min24127dProject Rules \ Source Files OrganizationRule
                                          Fields should be marked as ReadOnly when possible371 issue315min322min 0s06912dProject Rules \ ImmutabilityRule
                                          Types almost 100% tested should be 100% tested232 issues324min 56s1640min3045dProject Rules \ Code CoverageRule
                                          Non-static classes should be instantiated or turned to static222 issues334min 0s284min 0s11365dProject Rules \ Object Oriented DesignRule
                                          Do not declare read only mutable reference types281 issue343min 0s360min 0s3400:00:00Project Rules \ ImmutabilityRule
                                          Nested types should not be visible291 issue362min 0s302min 0s14365dProject Rules \ DesignRule
                                          Namespaces almost 100% tested should be 100% tested311 issue352min 0s2220min3136dProject Rules \ Code CoverageRule
                                          Avoid publicly visible constant fields193 issues371min 30s276min2691dProject Rules \ VisibilityRule

                                          Statistics

                                          Stat   Issues   Debt   Annual Interest   Breaking Point   Category
                                          Sum:47211d 4h8d 6h25 025d-
                                          Average:12.422h 25min1h 51min658d-
                                          Minimum:11min 30s0min 0s00:00:00-
                                          Maximum:2387d 0h1d 7h7 275d-
                                          Standard deviation:38.041d 1h3h 38min1 316d-
                                          Variance:1 44736 891d5 982doverflow-
                                          ok   Code Query:    New Debt and Issues per Rule

                                          28 rules matched

                                          28 rulesIssuesAddedIssuesFixedIssuesDebtDebtDiffCategoryFull Name
                                          Do not raise too general exception types0221 issues16no issue0421 issues017h 0min007h 0minProject Rules \ .NET Framework Usage \ SystemRule
                                          API Breaking Changes: Types069 issues15no issue099 issues033h 0min013h 0minProject Rules \ API Breaking ChangesRule
                                          New Methods should be tested0140 issues18no issue0140 issues042h 40min022h 40minProject Rules \ Code CoverageRule
                                          From now, all types added should be 100% covered by tests0315 issues17no issue0515 issues062h 30min042h 30minProject Rules \ Code Smells RegressionRule
                                          API Breaking Changes: Methods0415 issues12no issue0615 issues052h 30min032h 30minProject Rules \ API Breaking ChangesRule
                                          Avoid namespaces dependency cycles181 issue11no issue222 issues024h 0min052h 0minProject Rules \ ArchitectureRule
                                          Avoid transforming an immutable type into a mutable one124 issues14no issue134 issues071h 30min061h 30minProject Rules \ Code Smells RegressionRule
                                          Types 100% covered should be tagged with FullCoveredAttribute0514 issues091 issue0227 issues091h 21min0739minProject Rules \ Code CoverageRule
                                          API Breaking Changes: Interfaces and Abstract Classes143 issues19no issue153 issues1430min0830minProject Rules \ API Breaking ChangesRule
                                          Methods refactored should be tested104 issues25no issue104 issues1624min0924minProject Rules \ Code CoverageRule
                                          Avoid prefixing type name with parent namespace name133 issues101 issue114 issues1240min1020minProject Rules \ Naming ConventionsRule
                                          Avoid namespaces mutually dependent241 issue27no issue202 issues1330min1115minProject Rules \ ArchitectureRule
                                          From now, all methods added should respect basic quality principles152 issues26no issue232 issues2010min1310minProject Rules \ Code Smells RegressionRule
                                          Avoid namespaces with few types085 issues043 issues0713 issues111h 5min1210minProject Rules \ DesignRule
                                          API Breaking Changes: Fields221 issue20no issue271 issue2110min1510minProject Rules \ API Breaking ChangesRule
                                          Collection properties should be read only271 issue23no issue173 issues1530min1410minProject Rules \ .NET Framework Usage \ System.CollectionsRule
                                          Constructor should not call a virtual method261 issue22no issue242 issues1818min166minProject Rules \ Object Oriented DesignRule
                                          Non-static classes should be instantiated or turned to static251 issue21no issue182 issues244min 0s192min 0sProject Rules \ Object Oriented DesignRule
                                          Types almost 100% tested should be 100% tested171 issue24no issue192 issues234min 56s182min 0sProject Rules \ Code CoverageRule
                                          Namespaces almost 100% tested should be 100% tested191 issue13no issue261 issue262min 0s172min 0sProject Rules \ Code CoverageRule
                                          Methods should be declared static if possible114 issues082 issues0810 issues229min201min 30sProject Rules \ Object Oriented DesignRule
                                          Assemblies Namespaces and Types should be tested077 issues037 issues0321 issues081h 24min210min 0sProject Rules \ Code CoverageRule
                                          Avoid publicly visible constant fields162 issues053 issues163 issues271min 30s22-(0min 30s)Project Rules \ VisibilityRule
                                          Static fields naming convention094 issues028 issues144 issues1912min23-(12min)Project Rules \ Naming ConventionsRule
                                          Nested types should not be visible201 issue0112 issues251 issue252min 0s24-(22min)Project Rules \ DesignRule
                                          Methods should have a low C.R.A.P score231 issue073 issues124 issues101h 6min25-(22min)Project Rules \ Code CoverageRule
                                          Avoid naming types and namespaces with the same identifier211 issue063 issues212 issues1724min26-(24min)Project Rules \ Naming ConventionsRule
                                          Code should be tested0050 issues00350 issues00238 issues007d 0h27-(3d 7h)Project Rules \ Code CoverageRule

                                          Statistics

                                          Stat   IssuesAdded   IssuesFixed   Issues   Debt   DebtDiff   Category
                                          Sum:21339345511d 1h-(1d 0h)-
                                          Average:7.6114.0416.253h 11min-(17min)-
                                          Minimum:1011min 30s-(3d 7h)-
                                          Maximum:503502387d 0h7h 0min-
                                          Standard deviation:11.6864.7243.671d 2h6h 7min-
                                          Variance:136.524 1891 90749 072d16 912d-
                                          ok   Code Query:    Debt and Issues per Code Element

                                          352 code elements matched

                                          352 code elementsIssuesDebtAnnual InterestBreaking PointFull Name
                                          Up(MigrationBuilder)0612 issues0004h 8min02330min0112 959dMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Up (MigrationBuilder)
                                          Up(MigrationBuilder)0352 issues0014h 1min02430min0122 909dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Up(MigrationBuilder)
                                          BuildTargetModel(ModelBuilder)0312 issues0033h 32min02529min0142 626dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints .BuildTargetModel(ModelBuilder)
                                          BuildModel(ModelBuilder)0302 issues0023h 32min02629min0132 626dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.CatalogContextModelSnapshot .BuildModel(ModelBuilder)
                                          BuildTargetModel(ModelBuilder)0781 issue0063h 22min0749min0007 775dMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.BuildTargetModel (ModelBuilder)
                                          BuildModel(ModelBuilder)0771 issue0053h 22min0769min0017 775dMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .AppIdentityDbContextModelSnapshot .BuildModel(ModelBuilder)
                                          BuildTargetModel(ModelBuilder)0801 issue0043h 22min0759min0027 775dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.BuildTargetModel (ModelBuilder)
                                          Microsoft.eShopWeb.ApplicationCore .Interfaces0332 issues0072h 20min02040min0281 277dMicrosoft.eShopWeb.ApplicationCore .Interfaces
                                          Index(IndexViewModel)0073 issues0082h 0min01345min037966dMicrosoft.eShopWeb.Web.Controllers .ManageController.Index(IndexViewModel)
                                          Microsoft.eShopWeb.Web.Interfaces0761 issue0092h 0min05720min0192 190dMicrosoft.eShopWeb.Web.Interfaces
                                          OnPostAsync(String)0123 issues0101h 46min01444min039872dMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                          LoginWith2fa(LoginWith2faViewModel ,Boolean,String)0322 issues0111h 45min02825min0251 522dMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa (LoginWith2faViewModel,Boolean,String)
                                          EnableAuthenticator (EnableAuthenticatorViewModel)0292 issues0121h 20min03124min0301 206dMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator (EnableAuthenticatorViewModel)
                                          ManageController0033 issues0131h 20min03723min0291 252dMicrosoft.eShopWeb.Web.Controllers .ManageController
                                          LinkLoginCallback()0262 issues0141h 16min03224min0311 156dMicrosoft.eShopWeb.Web.Controllers .ManageController.LinkLoginCallback()
                                          EfRepository<T>0008 issues0151h 13min0002h 20min083190dMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>
                                          Microsoft.eShopWeb.Web.Services0014 issues0161h 7min0051h 20min066305dMicrosoft.eShopWeb.Web.Services
                                          ChangePassword(ChangePasswordViewModel)0252 issues0171h 6min03024min035996dMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword (ChangePasswordViewModel)
                                          SetPassword(SetPasswordViewModel)0282 issues0181h 3min03324min038959dMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword (SetPasswordViewModel)
                                          ExternalLogins()0272 issues0191h 2min03623min036974dMicrosoft.eShopWeb.Web.Controllers .ManageController.ExternalLogins()
                                          BaseSpecification<T>0931 issue0201h 0min06620min0341 095dMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T>
                                          ConfirmEmail(String,String)0043 issues02158min01642min056500dMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                          SendVerificationEmail(IndexViewModel)0402 issues02253min03423min040820dMicrosoft.eShopWeb.Web.Controllers .ManageController.SendVerificationEmail (IndexViewModel)
                                          ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)0392 issues02348min02924min047709dMicrosoft.eShopWeb.Web.Startup .ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)
                                          RemoveLogin(RemoveLoginViewModel)0422 issues02647min03923min041754dMicrosoft.eShopWeb.Web.Controllers .ManageController.RemoveLogin (RemoveLoginViewModel)
                                          EnableAuthenticator()0412 issues02547min04023min043754dMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator()
                                          GenerateRecoveryCodes()0382 issues02447min04123min042754dMicrosoft.eShopWeb.Web.Controllers .ManageController.GenerateRecoveryCodes( )
                                          ChangePassword()0202 issues02945min04222min046720dMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword()
                                          SetPassword()0342 issues02845min04322min045720dMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword()
                                          Disable2fa()0372 issues02745min04422min044720dMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2fa()
                                          Microsoft.eShopWeb.Web.ViewModels0362 issues03140min02240min062365dMicrosoft.eShopWeb.Web.ViewModels
                                          Microsoft.eShopWeb.Web.Controllers0142 issues03040min02140min063365dMicrosoft.eShopWeb.Web.Controllers
                                          Disable2faWarning()0152 issues03239min04822min048649dMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2faWarning()
                                          MyAccount()0023 issues03338min01742min064338dMicrosoft.eShopWeb.Web.Controllers .ManageController.MyAccount()
                                          Detail(Int32)0981 issue03438min0902min 48s0045 054dMicrosoft.eShopWeb.Web.Controllers .OrderController.Detail(Int32)
                                          GetOrSetBasketCookieAndUserName()0132 issues03538min02726min054526dMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel .GetOrSetBasketCookieAndUserName()
                                          ResetAuthenticator()0162 issues03637min04722min049614dMicrosoft.eShopWeb.Web.Controllers .ManageController.ResetAuthenticator()
                                          SignIn(LoginViewModel,String)0961 issue03737min0932min 20s0035 881dMicrosoft.eShopWeb.Web.Controllers .AccountController.SignIn(LoginViewModel ,String)
                                          Main(String[])0971 issue03836min0834min 3s0103 251dMicrosoft.eShopWeb.Web.Program.Main (String[])
                                          LoginWith2fa(Boolean,String)0172 issues03935min04922min050586dMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa(Boolean ,String)
                                          TwoFactorAuthentication()0222 issues04033min05022min052554dMicrosoft.eShopWeb.Web.Controllers .ManageController .TwoFactorAuthentication()
                                          SeedAsync(CatalogContext,ILoggerFactory ,Nullable<Int32>)0901 issue04132min0796min0241 824dMicrosoft.eShopWeb.Infrastructure.Data .CatalogContextSeed.SeedAsync (CatalogContext,ILoggerFactory,Nullable <Int32>)
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)0232 issues04231min03823min057497dMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          CreateOrderAsync(Int32,Address)0831 issue04331min0824min 22s0162 615dMicrosoft.eShopWeb.ApplicationCore .Services.OrderService.CreateOrderAsync (Int32,Address)
                                          ResetPassword(String)0242 issues04431min05522min055517dMicrosoft.eShopWeb.Web.Controllers .AccountController.ResetPassword(String)
                                          GetBasketItemCountAsync(String)0811 issue04530min0873min 26s0093 251dMicrosoft.eShopWeb.ApplicationCore .Services.BasketService .GetBasketItemCountAsync(String)
                                          SetQuantities(Int32,Dictionary<String ,Int32>)0821 issue04630min0893min 24s0073 251dMicrosoft.eShopWeb.ApplicationCore .Services.BasketService.SetQuantities (Int32,Dictionary<String,Int32>)
                                          FormatKey(String)0851 issue04730min0805min0221 869dMicrosoft.eShopWeb.Web.Controllers .ManageController.FormatKey(String)
                                          Web0212 issues04830min06920min053547dWeb
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)0182 issues04928min04522min058453dMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          MyOrders()0192 issues05027min05122min059452dMicrosoft.eShopWeb.Web.Controllers .OrderController.MyOrders()
                                          GetQuery(IQueryable<T>,ISpecification<T> )0881 issue05126min07216min051578dMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>.GetQuery (IQueryable<T>,ISpecification<T>)
                                          AddErrors(IdentityResult)0891 issue05226min0815min0231 858dMicrosoft.eShopWeb.Web.Controllers .ManageController.AddErrors (IdentityResult)
                                          Register(RegisterViewModel,String)0861 issue05325min0912min 48s0083 251dMicrosoft.eShopWeb.Web.Controllers .AccountController.Register (RegisterViewModel,String)
                                          Basket0113 issues05425min01940min078228dMicrosoft.eShopWeb.ApplicationCore .Entities.BasketAggregate.Basket
                                          .ctor(String)0103 issues05522min01542min082192dMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                          Basket0432 issues05622min0041h 20min091100dMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket
                                          SignIn(String)0911 issue05721min0962min 0s0053 960dMicrosoft.eShopWeb.Web.Controllers .AccountController.SignIn(String)
                                          Up(MigrationBuilder)0093 issues05920min0011h 22min09390dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                          Down(MigrationBuilder)0083 issues05820min0021h 22min09490dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                          AddErrors(IdentityResult)0871 issue06020min0863min 46s0211 939dMicrosoft.eShopWeb.Web.Controllers .AccountController.AddErrors (IdentityResult)
                                          IOrderRepository0642 issues06320min01840min087182dMicrosoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository
                                          BasketItemViewModel0632 issues06220min0071h 2min089117dMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel
                                          BasketViewModel0662 issues06120min0081h 2min090117dMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel
                                          IAggregateRoot0841 issue06419min0972min 0s0063 467dMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAggregateRoot
                                          .ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)0622 issues06518min04622min067297dMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel..ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)
                                          SetBasketModelAsync()0652 issues06618min03523min069278dMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.SetBasketModelAsync()
                                          Order0672 issues06717min0031h 21min09876dMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order
                                          Microsoft.AspNetCore.Mvc0063 issues06916min06820min068292dMicrosoft.AspNetCore.Mvc
                                          LoginModel+InputModel0053 issues06816min0091h 2min09294dMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel
                                          OnPost(Dictionary<String,Int32>)0482 issues07015min05322min070260dMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnPost(Dictionary<String ,Int32>)
                                          TransferBasketAsync(String,String)0991 issue07115min0942min 6s0152 615dMicrosoft.eShopWeb.ApplicationCore .Services.BasketService .TransferBasketAsync(String,String)
                                          IBasketViewModelService0951 issue07215min0101h 1min09589dMicrosoft.eShopWeb.Web.Interfaces .IBasketViewModelService
                                          CustomerOrdersWithItemsSpecification0452 issues07514min05920min072255dMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification
                                          ErrorModel0442 issues07614min0111h 0min09785dMicrosoft.eShopWeb.Web.Pages.ErrorModel
                                          CheckoutModel0472 issues07314min0121h 0min09685dMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                          OrderController0462 issues07414min05820min071255dMicrosoft.eShopWeb.Web.Controllers .OrderController
                                          Down(MigrationBuilder)0921 issue07713min0883min 26s0261 477dMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Down (MigrationBuilder)
                                          BasketWithItemsSpecification0682 issues08113min06220min074237dMicrosoft.eShopWeb.ApplicationCore .Specifications .BasketWithItemsSpecification
                                          CatalogFilterSpecification0572 issues08213min06020min075237dMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterSpecification
                                          OrderRepository0602 issues08313min06420min076237dMicrosoft.eShopWeb.Infrastructure.Data .OrderRepository
                                          BasketViewModelService0592 issues07813min06320min077237dMicrosoft.eShopWeb.Web.Services .BasketViewModelService
                                          CatalogController0542 issues07913min06720min073237dMicrosoft.eShopWeb.Web.Controllers.Api .CatalogController
                                          IdentityHostingStartup0532 issues08013min0982min 0s0172 372dMicrosoft.eShopWeb.Web.Areas.Identity .IdentityHostingStartup
                                          Configure(IApplicationBuilder ,IHostingEnvironment,LinkGenerator)0941 issue08412min0992min 0s0182 363dMicrosoft.eShopWeb.Web.Startup.Configure (IApplicationBuilder,IHostingEnvironment ,LinkGenerator)
                                          GetBrands()0492 issues08612min05222min081211dMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetBrands ()
                                          GetTypes()0552 issues08512min05422min080211dMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetTypes( )
                                          set_CurrentLogins(IList<UserLoginInfo>)0562 issues08812min0844min 0s0321 122dMicrosoft.eShopWeb.Web.ViewModels.Manage .ExternalLoginsViewModel .set_CurrentLogins(IList<UserLoginInfo>)
                                          set_OtherLogins(IList <AuthenticationScheme>)0582 issues08712min0854min 0s0331 122dMicrosoft.eShopWeb.Web.ViewModels.Manage .ExternalLoginsViewModel.set_OtherLogins (IList<AuthenticationScheme>)
                                          Ardalis.GuardClauses0522 issues09012min07120min079219dArdalis.GuardClauses
                                          SpecificationEvaluator<T>0502 issues08912min0061h 2min09970dMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                          LinkLogin(String)0731 issue09111min0952min 0s0202 008dMicrosoft.eShopWeb.Web.Controllers .ManageController.LinkLogin(String)
                                          OnPostUpdate(Dictionary<String,Int32>)0512 issues09210min05622min088175dMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPostUpdate(Dictionary <String,Int32>)
                                          Down(MigrationBuilder)0691 issue09310min0922min 29s0271 477dMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Down (MigrationBuilder)
                                          BasketService0751 issue09710min06520min086182dMicrosoft.eShopWeb.ApplicationCore .Services.BasketService
                                          IAsyncRepository<T>0741 issue09810min06120min084182dMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAsyncRepository<T>
                                          ISpecification<T>0791 issue09910min07020min085182dMicrosoft.eShopWeb.ApplicationCore .Interfaces.ISpecification<T>
                                          .ctor()0721 issue09410min0789min060405dMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Address..ctor()
                                          .ctor()0711 issue09510min0779min061405dMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate .CatalogItemOrdered..ctor()
                                          .ctor()0701 issue09610min07311min065331dMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order..ctor()

                                          Statistics

                                          Stat   Issues   Debt   Annual Interest   Breaking Point
                                          Sum:47211d 4h8d 6h208 048d
                                          Average:1.3415min11min591d
                                          Minimum:10min 30s0min 0s00:00:00
                                          Maximum:84h 8min2h 20min7 775d
                                          Standard deviation:0.6534min18min991d
                                          Variance:0.42150d41doverflow
                                          ok   Code Query:    New Debt and Issues per Code Element

                                          141 code elements matched

                                          141 code elementsIssuesAddedIssuesFixedIssuesDebtDebtDiffFull Name
                                          BuildTargetModel(ModelBuilder)0232 issues034no issue0392 issues0013h 32min0003h 32minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints .BuildTargetModel(ModelBuilder)
                                          Microsoft.eShopWeb.Web.Interfaces0591 issue033no issue0821 issue0042h 0min0012h 0minMicrosoft.eShopWeb.Web.Interfaces
                                          OnPostAsync(String)0043 issues032no issue0083 issues0051h 46min0021h 46minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                          EfRepository<T>0008 issues0011 issue0008 issues0101h 13min0031h 6minMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>
                                          Microsoft.eShopWeb.Web.Services0063 issues037no issue0014 issues0111h 7min0041h 0minMicrosoft.eShopWeb.Web.Services
                                          BaseSpecification<T>0601 issue0001 issue0781 issue0151h 0min00555minMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T>
                                          ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)0242 issues036no issue0352 issues01848min00648minMicrosoft.eShopWeb.Web.Startup .ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)
                                          Microsoft.eShopWeb.Web.ViewModels0252 issues035no issue0342 issues02640min00840minMicrosoft.eShopWeb.Web.ViewModels
                                          Microsoft.eShopWeb.Web.Controllers0202 issues028no issue0372 issues02540min00740minMicrosoft.eShopWeb.Web.Controllers
                                          MyAccount()0023 issues027no issue0073 issues02838min00938minMicrosoft.eShopWeb.Web.Controllers .ManageController.MyAccount()
                                          GetOrSetBasketCookieAndUserName()0212 issues026no issue0362 issues02938min01038minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel .GetOrSetBasketCookieAndUserName()
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)0222 issues031no issue0332 issues03331min01131minMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)0262 issues030no issue0302 issues03628min01228minMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          ConfirmEmail(String,String)0302 issues029no issue0023 issues01658min01327minMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                          MyOrders()0312 issues046no issue0292 issues03727min01427minMicrosoft.eShopWeb.Web.Controllers .OrderController.MyOrders()
                                          GetQuery(IQueryable<T>,ISpecification<T> )0661 issue045no issue0761 issue03826min01526minMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>.GetQuery (IQueryable<T>,ISpecification<T>)
                                          Basket0322 issues044no issue0322 issues03922min01622minMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket
                                          Up(MigrationBuilder)0053 issues049no issue0043 issues04120min01820minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                          Down(MigrationBuilder)0033 issues048no issue0053 issues04020min01720minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                          Microsoft.eShopWeb.ApplicationCore .Interfaces0621 issue047no issue0312 issues0022h 20min03420minMicrosoft.eShopWeb.ApplicationCore .Interfaces
                                          IOrderRepository0272 issues040no issue0382 issues04420min03520minMicrosoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository
                                          Web0481 issue039no issue0452 issues03530min03620minWeb
                                          BasketItemViewModel0282 issues038no issue0442 issues04320min03120minMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel
                                          BasketViewModel0292 issues043no issue0472 issues04220min03220minMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel
                                          LoginWith2fa(Boolean,String)0531 issue042no issue0462 issues03135min03320minMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa(Boolean ,String)
                                          LoginWith2fa(LoginWith2faViewModel ,Boolean,String)0541 issue041no issue0432 issues0061h 45min04020minMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa (LoginWith2faViewModel,Boolean,String)
                                          ResetPassword(String)0521 issue010no issue0402 issues03431min04120minMicrosoft.eShopWeb.Web.Controllers .AccountController.ResetPassword(String)
                                          Index(IndexViewModel)0501 issue009no issue0093 issues0032h 0min04220minMicrosoft.eShopWeb.Web.Controllers .ManageController.Index(IndexViewModel)
                                          SendVerificationEmail(IndexViewModel)0471 issue008no issue0422 issues01753min03720minMicrosoft.eShopWeb.Web.Controllers .ManageController.SendVerificationEmail (IndexViewModel)
                                          ChangePassword()0511 issue013no issue0412 issues02445min03820minMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword()
                                          ChangePassword(ChangePasswordViewModel)0491 issue012no issue0282 issues0121h 6min03920minMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword (ChangePasswordViewModel)
                                          SetPassword()0461 issue011no issue0152 issues02245min02220minMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword()
                                          SetPassword(SetPasswordViewModel)0671 issue002no issue0142 issues0131h 3min02320minMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword (SetPasswordViewModel)
                                          ExternalLogins()0581 issue003no issue0172 issues0141h 2min02420minMicrosoft.eShopWeb.Web.Controllers .ManageController.ExternalLogins()
                                          LinkLoginCallback()0881 issue004no issue0162 issues0091h 16min01920minMicrosoft.eShopWeb.Web.Controllers .ManageController.LinkLoginCallback()
                                          RemoveLogin(RemoveLoginViewModel)0911 issue007no issue0132 issues02147min02020minMicrosoft.eShopWeb.Web.Controllers .ManageController.RemoveLogin (RemoveLoginViewModel)
                                          TwoFactorAuthentication()0901 issue006no issue0102 issues03233min02120minMicrosoft.eShopWeb.Web.Controllers .ManageController .TwoFactorAuthentication()
                                          Disable2faWarning()0851 issue005no issue0112 issues02739min02820minMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2faWarning()
                                          Disable2fa()0841 issue022no issue0122 issues02345min02920minMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2fa()
                                          EnableAuthenticator()0871 issue021no issue0182 issues01947min03020minMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator()
                                          EnableAuthenticator (EnableAuthenticatorViewModel)0861 issue020no issue0252 issues0071h 20min02520minMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator (EnableAuthenticatorViewModel)
                                          ResetAuthenticator()0971 issue025no issue0242 issues03037min02620minMicrosoft.eShopWeb.Web.Controllers .ManageController.ResetAuthenticator()
                                          GenerateRecoveryCodes()0961 issue024no issue0262 issues02047min02720minMicrosoft.eShopWeb.Web.Controllers .ManageController.GenerateRecoveryCodes( )
                                          .ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)0192 issues023no issue0232 issues04518min04318minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel..ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)
                                          SetBasketModelAsync()0092 issues016no issue0192 issues04618min04418minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.SetBasketModelAsync()
                                          LoginModel+InputModel0013 issues015no issue0033 issues04716min04516minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel
                                          OnPost(Dictionary<String,Int32>)0102 issues014no issue0212 issues04815min04615minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnPost(Dictionary<String ,Int32>)
                                          IBasketViewModelService0921 issue019no issue0771 issue04915min04715minMicrosoft.eShopWeb.Web.Interfaces .IBasketViewModelService
                                          ErrorModel0082 issues018no issue0222 issues05014min04914minMicrosoft.eShopWeb.Web.Pages.ErrorModel
                                          CheckoutModel0072 issues017no issue0202 issues05314min04814minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                          BasketWithItemsSpecification0112 issues083no issue0272 issues05513min05213minMicrosoft.eShopWeb.ApplicationCore .Specifications .BasketWithItemsSpecification
                                          OrderRepository0162 issues082no issue0482 issues05713min05313minMicrosoft.eShopWeb.Infrastructure.Data .OrderRepository
                                          BasketViewModelService0172 issues081no issue0712 issues05813min05013minMicrosoft.eShopWeb.Web.Services .BasketViewModelService
                                          IdentityHostingStartup0182 issues086no issue0692 issues05913min05113minMicrosoft.eShopWeb.Web.Areas.Identity .IdentityHostingStartup
                                          Configure(IApplicationBuilder ,IHostingEnvironment,LinkGenerator)0691 issue085no issue0791 issue06012min05412minMicrosoft.eShopWeb.Web.Startup.Configure (IApplicationBuilder,IHostingEnvironment ,LinkGenerator)
                                          GetBrands()0152 issues084no issue0652 issues06112min05612minMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetBrands ()
                                          GetTypes()0122 issues077no issue0642 issues06212min05512minMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetTypes( )
                                          SpecificationEvaluator<T>0132 issues076no issue0662 issues06312min05712minMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                          OnPostUpdate(Dictionary<String,Int32>)0142 issues075no issue0702 issues06410min05810minMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPostUpdate(Dictionary <String,Int32>)
                                          CatalogFilterSpecification0801 issue080no issue0672 issues05413min07210minMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterSpecification
                                          CustomerOrdersWithItemsSpecification0831 issue079no issue0682 issues05114min07310minMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification
                                          BasketService0821 issue078no issue0981 issue07310min07110minMicrosoft.eShopWeb.ApplicationCore .Services.BasketService
                                          IAsyncRepository<T>0771 issue087no issue0961 issue07410min06910minMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAsyncRepository<T>
                                          ISpecification<T>0761 issue096no issue0971 issue07110min07010minMicrosoft.eShopWeb.ApplicationCore .Interfaces.ISpecification<T>
                                          AddExtraConstraints0791 issue095no issue0861 issue07210min07710minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints
                                          BuildModel(ModelBuilder)0781 issue094no issue0632 issues0003h 32min07810minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.CatalogContextModelSnapshot .BuildModel(ModelBuilder)
                                          SlugifyParameterTransformer0891 issue099no issue0941 issue07710min07610minMicrosoft.eShopWeb.Web .SlugifyParameterTransformer
                                          Startup0811 issue098no issue0891 issue07810min07410minMicrosoft.eShopWeb.Web.Startup
                                          ApiHealthCheck0701 issue097no issue0881 issue07510min07510minMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck
                                          HomePageHealthCheck0711 issue090no issue0911 issue07610min06210minMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck
                                          _itemRepository0681 issue089no issue0901 issue06610min06310minMicrosoft.eShopWeb.Web.Services .BasketViewModelService._itemRepository
                                          CachedCatalogViewModelService0741 issue088no issue0851 issue06710min06110minMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService
                                          PrivacyModel0751 issue093no issue0841 issue06510min05910minMicrosoft.eShopWeb.Web.Pages .PrivacyModel
                                          IndexModel0721 issue092no issue0871 issue07010min06010minMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel
                                          ManageController0731 issue091no issue0063 issues0081h 20min06710minMicrosoft.eShopWeb.Web.Controllers .ManageController
                                          OrderController0941 issue058no issue0532 issues05214min06810minMicrosoft.eShopWeb.Web.Controllers .OrderController
                                          CatalogController0951 issue057no issue0542 issues05613min06610minMicrosoft.eShopWeb.Web.Controllers.Api .CatalogController
                                          LoginModel0931 issue056no issue0721 issue06910min06410minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel
                                          set_ExternalLogins(IList <AuthenticationScheme>)0981 issue061no issue0991 issue06810min06510minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel .set_ExternalLogins(IList <AuthenticationScheme>)
                                          Microsoft.eShopWeb.Web.HealthChecks0362 issues060no issue0522 issues0799min0799minMicrosoft.eShopWeb.Web.HealthChecks
                                          OnGetAsync(String)0991 issue059no issue0931 issue0808min0808minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnGetAsync (String)
                                          .ctor(IHttpContextAccessor,LinkGenerator )0392 issues052no issue0492 issues0818min0818minMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)
                                          GetBasketViewModelAsync()0451 issue051no issue0921 issue0827min0827minMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent.Basket .GetBasketViewModelAsync()
                                          SetBasketModelAsync()0631 issue050no issue0951 issue0836min0836minMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.SetBasketModelAsync()
                                          OnGet()0372 issues055no issue0502 issues0846min0846minMicrosoft.eShopWeb.Web.Pages.ErrorModel .OnGet()
                                          .ctor(IHttpContextAccessor)0382 issues054no issue0512 issues0856min0856minMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck..ctor (IHttpContextAccessor)
                                          .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)0611 issue053no issue0831 issue0866min0866minMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterPaginatedSpecification. .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)
                                          OnPost(CatalogItemViewModel)0651 issue062no issue0751 issue0875min0875minMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPost(CatalogItemViewModel)
                                          Microsoft.eShopWeb.Web.Pages0641 issue071no issue0741 issue0905min0905minMicrosoft.eShopWeb.Web.Pages
                                          Microsoft.eShopWeb.Web.Pages.Basket0571 issue070no issue0731 issue0915min0915minMicrosoft.eShopWeb.Web.Pages.Basket
                                          Microsoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent0561 issue069no issue0801 issue0885min0885minMicrosoft.eShopWeb.Web.Pages.Shared .Components.BasketComponent
                                          Microsoft.eShopWeb.Web.Areas.Identity .Pages.Account0551 issue074no issue0811 issue0895min0895minMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account
                                          set_OrderBy(Expression<Func<T,Object>>)0332 issues073no issue0602 issues0934min 45s0934min 45sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderBy(Expression<Func<T,Object>>)
                                          set_OrderByDescending(Expression<Func<T ,Object>>)0342 issues072no issue0612 issues0924min 45s0924min 45sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)
                                          ApplyOrderBy(Expression<Func<T,Object>>)0352 issues065no issue0622 issues0954min 31s0954min 31sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderBy(Expression<Func<T,Object>> )
                                          ApplyOrderByDescending(Expression<Func<T ,Object>>)0402 issues064no issue0592 issues0944min 31s0944min 31sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)
                                          get_RequestId()0442 issues063no issue0562 issues0984min 17s0984min 17sMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_RequestId()
                                          set_RequestId(String)0412 issues068no issue0572 issues0994min 17s0994min 17sMicrosoft.eShopWeb.Web.Pages.ErrorModel .set_RequestId(String)
                                          get_ShowRequestId()0422 issues067no issue0582 issues0964min 17s0964min 17sMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_ShowRequestId()
                                          get_CatalogItemId()0432 issues066no issue0552 issues0974min 17s0974min 17sMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_CatalogItemId()

                                          Statistics

                                          Stat   IssuesAdded   IssuesFixed   Issues   Debt   DebtDiff
                                          Sum:21352517d 1h4d 4h
                                          Average:1.510.0351.7824min15min
                                          Minimum:1010min 30s-(10min)
                                          Maximum:8283h 32min3h 32min
                                          Standard deviation:0.80.220.8134min23min
                                          Variance:0.630.0480.65151d69d

                                          Object Oriented Design

                                          ok   Validated Rule:    Avoid interfaces too big

                                          No type matched

                                          ok   Validated Rule:    Base class should not use derivatives

                                          No type matched

                                          ok   Validated Rule:    Class shouldn't be too deep in inheritance tree

                                          No type matched

                                          ok   Validated Rule:    Class with no descendant should be sealed if possible

                                          No type matched

                                          ok   Validated Rule:    Overrides of Method() should call base.Method()

                                          No method matched

                                          ok   Validated Rule:    Do not hide base class methods

                                          No method matched

                                          ok   Validated Rule:    A stateless class or structure might be turned into a static type

                                          No type matched

                                          warning   Rule Violated:    Non-static classes should be instantiated or turned to static

                                          2 types matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          2 typesVisibilityDebtSeverityFull Name
                                          PaymentMethod0Public02min 0s0MediumMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod
                                          SpecificationEvaluator<T>1Public12min 0s1MediumMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>
                                          warning   Rule Violated:    Methods should be declared static if possible

                                          10 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          10 methodsstaticFieldsUsedmethodsCallingMeDebtSeverityFull Name
                                          ConfigurateCatalogItemOrdered (EntityTypeBuilder<CatalogItemOrdered>)03no field051 method051min 0s03MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext .ConfigurateCatalogItemOrdered (EntityTypeBuilder<CatalogItemOrdered>)
                                          ConfigureAddress(EntityTypeBuilder <Address>)04no field021 method021min 0s04MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureAddress (EntityTypeBuilder<Address>)
                                          ConfigureBasket(EntityTypeBuilder<Basket >)02no field031 method031min 0s02MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureBasket (EntityTypeBuilder<Basket>)
                                          ConfigureCatalogItem(EntityTypeBuilder <CatalogItem>)00no field001 method001min 0s00MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureCatalogItem (EntityTypeBuilder<CatalogItem>)
                                          ConfigureCatalogBrand(EntityTypeBuilder <CatalogBrand>)01no field011 method011min 0s01MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureCatalogBrand (EntityTypeBuilder<CatalogBrand>)
                                          ConfigureCatalogType(EntityTypeBuilder <CatalogType>)08no field041 method041min 0s08MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureCatalogType (EntityTypeBuilder<CatalogType>)
                                          ConfigureOrder(EntityTypeBuilder<Order>)09no field071 method071min 0s09MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureOrder (EntityTypeBuilder<Order>)
                                          ConfigureOrderItem(EntityTypeBuilder <OrderItem>)07no field061 method061min 0s07MediumMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.ConfigureOrderItem (EntityTypeBuilder<OrderItem>)
                                          OnGet()05no field09no method090min 30s05MediumMicrosoft.eShopWeb.Web.Pages .PrivacyModel.OnGet()
                                          OnGet()06no field08no method080min 30s06MediumMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnGet()
                                          warning   Rule Violated:    Constructor should not call a virtual method

                                          2 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          2 methodsvirtualMethodsCalledDerivedTypesDebtSeverityFull Name
                                          .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)11 method0no type16min0HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CatalogFilterPaginatedSpecification. .ctor(Int32,Int32,Nullable<Int32> ,Nullable<Int32>)
                                          .ctor(String)02 methods1no type012min1HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                          ok   Validated Rule:    Avoid the Singleton pattern

                                          No type matched

                                          ok   Validated Rule:    Don't assign static fields from instance methods

                                          No field matched

                                          warning   Rule Violated:    Avoid empty interfaces

                                          1 type matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          1 typeTypesThatImplementMeDebtSeverityFull Name
                                          IAggregateRoot03 types019min0MediumMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAggregateRoot
                                          ok   Validated Rule:    Avoid types initialization cycles

                                          No method matched

                                          API Breaking Changes

                                          warningCritical   Critical Rule Violated:    API Breaking Changes: Types

                                          9 types matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          9 typesNewVisibilityDebtSeverityFull Name
                                          IRepository<T> 220min2HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IRepository<T>
                                          Basket 320min3HighMicrosoft.eShopWeb.Web.ViewComponents .Basket
                                          ICatalogService 020min0HighMicrosoft.eShopWeb.Web.Services .ICatalogService
                                          CachedCatalogService 120min1HighMicrosoft.eShopWeb.Web.Services .CachedCatalogService
                                          CatalogService 420min4HighMicrosoft.eShopWeb.Web.Services .CatalogService
                                          BasketItemViewModel 720min7HighMicrosoft.eShopWeb.Web.ViewModels .BasketItemViewModel
                                          BasketViewModel 820min8HighMicrosoft.eShopWeb.Web.ViewModels .BasketViewModel
                                          BasketController 520min5HighMicrosoft.eShopWeb.Web.Controllers .BasketController
                                          CatalogController 620min6HighMicrosoft.eShopWeb.Web.Controllers .CatalogController
                                          warningCritical   Critical Rule Violated:    API Breaking Changes: Methods

                                          15 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          15 methodsNewVisibilityDebtSeverityFull Name
                                          .ctor(IAsyncRepository<Basket> ,IRepository<CatalogItem>,IUriComposer ,IAppLogger<BasketService>) 0410min04HighMicrosoft.eShopWeb.ApplicationCore .Services.BasketService..ctor (IAsyncRepository<Basket>,IRepository <CatalogItem>,IUriComposer,IAppLogger <BasketService>)
                                          GetByIdWithItems(Int32) 0510min05HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository .GetByIdWithItems(Int32)
                                          GetById(Int32) 0610min06HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.GetById(Int32)
                                          GetSingleBySpec(ISpecification<T>) 0310min03HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.GetSingleBySpec (ISpecification<T>)
                                          ListAll() 0010min00HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.ListAll()
                                          List(ISpecification<T>) 0110min01HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.List(ISpecification<T>)
                                          Add(T) 0210min02HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.Add(T)
                                          Update(T) 0710min07HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.Update(T)
                                          Delete(T) 1210min12HighMicrosoft.eShopWeb.Infrastructure.Data .EfRepository<T>.Delete(T)
                                          GetByIdWithItems(Int32) 1310min13HighMicrosoft.eShopWeb.Infrastructure.Data .OrderRepository.GetByIdWithItems(Int32)
                                          Configure(IApplicationBuilder ,IHostingEnvironment) 1410min14HighMicrosoft.eShopWeb.Web.Startup.Configure (IApplicationBuilder,IHostingEnvironment )
                                          .ctor(IAsyncRepository<Basket> ,IRepository<CatalogItem>,IUriComposer) 1110min11HighMicrosoft.eShopWeb.Web.Services .BasketViewModelService..ctor (IAsyncRepository<Basket>,IRepository <CatalogItem>,IUriComposer)
                                          Index() 0810min08HighMicrosoft.eShopWeb.Web.Controllers .ManageController.Index()
                                          Index() 0910min09HighMicrosoft.eShopWeb.Web.Controllers .OrderController.Index()
                                          .ctor(ICatalogService) 1010min10HighMicrosoft.eShopWeb.Web.Controllers.Api .CatalogController..ctor(ICatalogService )
                                          warningCritical   Critical Rule Violated:    API Breaking Changes: Fields

                                          1 field matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          1 fieldNewVisibilityDebtSeverityFull Name
                                          _itemRepositoryPrivate010min0HighMicrosoft.eShopWeb.Web.Services .BasketViewModelService._itemRepository
                                          warningCritical   Critical Rule Violated:    API Breaking Changes: Interfaces and Abstract Classes

                                          3 types matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          3 typesmethodsAddedmethodsRemovedDebtSeverityFull Name
                                          IAsyncRepository<T>11 method1no method010min0HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IAsyncRepository<T>
                                          IOrderRepository2no method01 method110min1HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.IOrderRepository
                                          ISpecification<T>05 methods2no method210min2HighMicrosoft.eShopWeb.ApplicationCore .Interfaces.ISpecification<T>
                                          ok   Validated Rule:    Broken serializable types

                                          No type matched

                                          ok   Validated Rule:    Avoid changing enumerations Flags status

                                          No type matched

                                          Code Coverage

                                          warning   Rule Violated:    Code should be tested

                                          238 methods matched

                                          238 methodsPercentage Coverage# lines of code (LOC)# lines of code not coveredCyclomatic Complexity (CC)DebtAnnual InterestFull Name
                                          PageNavClass(ViewContext,String)0370%0632061204420536min00018minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.PageNavClass(ViewContext ,String)
                                          GetQuery(IQueryable<T>,ISpecification<T> )00264.29%012140495007703026min00116minMicrosoft.eShopWeb.Infrastructure.Data .SpecificationEvaluator<T>.GetQuery (IQueryable<T>,ISpecification<T>)
                                          Up(MigrationBuilder)0360%0053300533001150003h 46min00210minMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Up (MigrationBuilder)
                                          Up(MigrationBuilder)0380%0063200632000150013h 39min00310minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Up(MigrationBuilder)
                                          BuildTargetModel(ModelBuilder)0400%0047500475006120063h 22min0079minMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.BuildTargetModel (ModelBuilder)
                                          BuildModel(ModelBuilder)0390%0027500275005120043h 22min0089minMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .AppIdentityDbContextModelSnapshot .BuildModel(ModelBuilder)
                                          BuildTargetModel(ModelBuilder)0350%0017500375004140033h 22min0069minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.BuildTargetModel (ModelBuilder)
                                          BuildTargetModel(ModelBuilder)0310%0007500075003140023h 22min0049minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints .BuildTargetModel(ModelBuilder)
                                          BuildModel(ModelBuilder)0300%0037500175002140053h 22min0059minMicrosoft.eShopWeb.Infrastructure.Data .Migrations.CatalogContextModelSnapshot .BuildModel(ModelBuilder)
                                          set_OrderBy(Expression<Func<T,Object>>)0320%0721067105410642min 45s0109minMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderBy(Expression<Func<T,Object>>)
                                          set_OrderByDescending(Expression<Func<T ,Object>>)0340%0671066105210672min 45s0099minMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)
                                          SeedAsync(CatalogContext,ILoggerFactory ,Nullable<Int32>)00556.25%010160387010602032min0116minMicrosoft.eShopWeb.Infrastructure.Data .CatalogContextSeed.SeedAsync (CatalogContext,ILoggerFactory,Nullable <Int32>)
                                          get_ActivePageKey()0330%0681068105310742min 17s0156minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_ActivePageKey()
                                          get_Index()0410%0701065106110782min 17s0166minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_Index()
                                          get_ChangePassword()0490%0691069106210772min 17s0176minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_ChangePassword()
                                          get_ExternalLogins()0480%0661063106310752min 17s0126minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages.get_ExternalLogins()
                                          get_TwoFactorAuthentication()0500%0641062105510732min 17s0136minMicrosoft.eShopWeb.Web.Views.Manage .ManageNavPages .get_TwoFactorAuthentication()
                                          get_RequestId()0520%0651064106010762min 17s0146minMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_RequestId()
                                          GetOrSetBasketCookieAndUserName()0510%03780328036302630min0186minMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel .GetOrSetBasketCookieAndUserName()
                                          .ctor()0470%0612060205710584min 8s0196minMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer..ctor()
                                          FormatKey(String)0430%03880348034302530min0205minMicrosoft.eShopWeb.Web.Controllers .ManageController.FormatKey(String)
                                          Index(IndexViewModel)0420%009170081700870071h 29min0215minMicrosoft.eShopWeb.Web.Controllers .ManageController.Index(IndexViewModel)
                                          LoginWith2fa(LoginWith2faViewModel ,Boolean,String)0440%011160091601550091h 25min0225minMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa (LoginWith2faViewModel,Boolean,String)
                                          AddErrors(IdentityResult)0460%04850505042203126min0235minMicrosoft.eShopWeb.Web.Controllers .ManageController.AddErrors (IdentityResult)
                                          ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)01011.54%0072600723017401638min0244min 46sMicrosoft.eShopWeb.Web.Startup .ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)
                                          SetBasketModelAsync()00850%0544059205120526min0254min 42sMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.SetBasketModelAsync()
                                          OnPostAsync(String)0450%013140101400960081h 26min0264min 41sMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                          ConfigureInMemoryDatabases (IServiceCollection)00460%0505058202530613min 12s0274min 29sMicrosoft.eShopWeb.Web.Startup .ConfigureInMemoryDatabases (IServiceCollection)
                                          CreateOrderAsync(Int32,Address)0160%0161301113049202131min0304min 22sMicrosoft.eShopWeb.ApplicationCore .Services.OrderService.CreateOrderAsync (Int32,Address)
                                          ChangePassword(ChangePasswordViewModel)0170%0171301313019401246min0294min 22sMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword (ChangePasswordViewModel)
                                          EnableAuthenticator (EnableAuthenticatorViewModel)0150%015130121302140101h 0min0284min 22sMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator (EnableAuthenticatorViewModel)
                                          set_IdentityGuid(String)0140%0901090105910652min 45s0324min 13sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer .set_IdentityGuid(String)
                                          set_Code(String)0120%0911091105810932min 17s0314min 13sMicrosoft.eShopWeb.Web.ViewModels .Account.ResetPasswordViewModel.set_Code (String)
                                          Main(String[])0180%0191201412041201836min0354min 3sMicrosoft.eShopWeb.Web.Program.Main (String[])
                                          SetPassword(SetPasswordViewModel)0260%0181201612016401343min0344min 3sMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword (SetPasswordViewModel)
                                          LinkLoginCallback()0250%0201201512018401156min0334min 3sMicrosoft.eShopWeb.Web.Controllers .ManageController.LinkLoginCallback()
                                          AddErrors(IdentityResult)0130%04950485038203820min0363min 46sMicrosoft.eShopWeb.Web.Controllers .AccountController.AddErrors (IdentityResult)
                                          SendVerificationEmail(IndexViewModel)0290%0221101711028301933min0373min 44sMicrosoft.eShopWeb.Web.Controllers .ManageController.SendVerificationEmail (IndexViewModel)
                                          SetBasketModelAsync()0280%05340524037204413min0383min 44sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.SetBasketModelAsync()
                                          set_RequestId(String)0240%0921092108810942min 17s0393min 38sMicrosoft.eShopWeb.Web.Pages.ErrorModel .set_RequestId(String)
                                          set_StatusMessage(String)0200%0871089108710922min 17s0403min 35sMicrosoft.eShopWeb.Web.Controllers .ManageController.set_StatusMessage (String)
                                          GetBasketItemCountAsync(String)0190%0231002010031302330min0433min 26sMicrosoft.eShopWeb.ApplicationCore .Services.BasketService .GetBasketItemCountAsync(String)
                                          Down(MigrationBuilder)0210%0251002110090104313min0423min 26sMicrosoft.eShopWeb.Infrastructure.Data .Migrations.Initial.Down (MigrationBuilder)
                                          ExternalLogins()0230%0241001910012501442min0413min 26sMicrosoft.eShopWeb.Web.Controllers .ManageController.ExternalLogins()
                                          SetQuantities(Int32,Dictionary<String ,Int32>)0119.09%0211101810033302430min0443min 24sMicrosoft.eShopWeb.ApplicationCore .Services.BasketService.SetQuantities (Int32,Dictionary<String,Int32>)
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)0220%02990249039203622min0473min 7sMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          RemoveLogin(RemoveLoginViewModel)0270%02890259029302927min0483min 7sMicrosoft.eShopWeb.Web.Controllers .ManageController.RemoveLogin (RemoveLoginViewModel)
                                          EnableAuthenticator()0840%02690239032302727min0453min 7sMicrosoft.eShopWeb.Web.Controllers .ManageController.EnableAuthenticator()
                                          GenerateRecoveryCodes()0830%02790229035302827min0463min 7sMicrosoft.eShopWeb.Web.Controllers .ManageController.GenerateRecoveryCodes( )
                                          get_StatusMessage()0850%0711070105610722min 17s0493min 3sMicrosoft.eShopWeb.Web.Controllers .ManageController.get_StatusMessage()
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)0870%03180318040203720min0542min 48sMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          .ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)0860%03380338086104610min0552min 48sMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel..ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)
                                          Register(RegisterViewModel,String)0820%03480278022303525min0562min 48sMicrosoft.eShopWeb.Web.Controllers .AccountController.Register (RegisterViewModel,String)
                                          ChangePassword()0780%03580268027303225min0532min 48sMicrosoft.eShopWeb.Web.Controllers .ManageController.ChangePassword()
                                          SetPassword()0770%03680308024303425min0502min 48sMicrosoft.eShopWeb.Web.Controllers .ManageController.SetPassword()
                                          Disable2fa()0790%03280298026303325min0512min 48sMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2fa()
                                          Detail(Int32)0810%03080288020401538min0522min 48sMicrosoft.eShopWeb.Web.Controllers .OrderController.Detail(Int32)
                                          .ctor(String)0800%0563054308310516min0572min 44sMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                          Down(MigrationBuilder)0880%04070407082104710min0602min 29sMicrosoft.eShopWeb.Infrastructure .Identity.Migrations .InitialIdentityModel.Down (MigrationBuilder)
                                          ConfirmEmail(String,String)0960%04270377014502230min0592min 29sMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                          ResetAuthenticator()0950%04170367047204017min0582min 29sMicrosoft.eShopWeb.Web.Controllers .ManageController.ResetAuthenticator()
                                          SignIn(LoginViewModel,String)00650%014140357013501737min0612min 20sMicrosoft.eShopWeb.Web.Controllers .AccountController.SignIn(LoginViewModel ,String)
                                          NullBasket(IGuardClause,Int32,Basket)00750%0602087104820603min 21s0622min 12sArdalis.GuardClauses.BasketGuards .NullBasket(IGuardClause,Int32,Basket)
                                          AddInclude(String)0970%0891088108510682min 31s0632min 11sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .AddInclude(String)
                                          Up(MigrationBuilder)0990%0456046608410488min0672min 11sMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                          Down(MigrationBuilder)0980%0466044609710498min0682min 11sMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                          LoginWith2fa(Boolean,String)0940%04760416050204115min0662min 11sMicrosoft.eShopWeb.Web.Controllers .AccountController.LoginWith2fa(Boolean ,String)
                                          .ctor(UserManager<ApplicationUser> ,SignInManager<ApplicationUser> ,IEmailSender,IAppLogger <ManageController>,UrlEncoder)0900%0436045609610508min0642min 11sMicrosoft.eShopWeb.Web.Controllers .ManageController..ctor(UserManager <ApplicationUser>,SignInManager <ApplicationUser>,IEmailSender ,IAppLogger<ManageController>,UrlEncoder )
                                          Disable2faWarning()0890%04460426023303919min0652min 11sMicrosoft.eShopWeb.Web.Controllers .ManageController.Disable2faWarning()
                                          TransferBasketAsync(String,String)00925%03980436043204215min0692min 6sMicrosoft.eShopWeb.ApplicationCore .Services.BasketService .TransferBasketAsync(String,String)
                                          ApplyOrderBy(Expression<Func<T,Object>>)0910%0931097109910692min 31s0892min 0sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderBy(Expression<Func<T,Object>> )
                                          ApplyOrderByDescending(Expression<Func<T ,Object>>)0930%0971098109810712min 31s0902min 0sMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)
                                          .ctor(IAsyncRepository<Basket> ,IAsyncRepository<CatalogItem> ,IAsyncRepository<Order>)0920%0554051409510555min0912min 0sMicrosoft.eShopWeb.ApplicationCore .Services.OrderService..ctor (IAsyncRepository<Basket> ,IAsyncRepository<CatalogItem> ,IAsyncRepository<Order>)
                                          .ctor(SerializationInfo,StreamingContext )0760%0981099109210702min 31s0882min 0sMicrosoft.eShopWeb.ApplicationCore .Exceptions.BasketNotFoundException. .ctor(SerializationInfo,StreamingContext )
                                          .ctor(String)0600%0991096109110912min 17s0852min 0sMicrosoft.eShopWeb.ApplicationCore .Exceptions.BasketNotFoundException. .ctor(String)
                                          .ctor(String,Exception)0590%0941093109410982min 17s0862min 0sMicrosoft.eShopWeb.ApplicationCore .Exceptions.BasketNotFoundException. .ctor(String,Exception)
                                          set_OrderDate(DateTimeOffset)0610%0951094109310662min 45s0872min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.OrderAggregate.Order .set_OrderDate(DateTimeOffset)
                                          get_IdentityGuid()0630%0961095107010992min 17s0922min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer .get_IdentityGuid()
                                          get_PaymentMethods()0620%0861085106910972min 17s0972min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer .get_PaymentMethods()
                                          .ctor(String)0580%0573053307210574min 35s0982min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.Buyer..ctor (String)
                                          get_Alias()0540%0761075107110952min 17s0992min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod .get_Alias()
                                          set_Alias(String)0530%0771076106810962min 17s0962min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod .set_Alias(String)
                                          get_CardId()0550%0781077106510892min 17s0932min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod .get_CardId()
                                          set_CardId(String)0570%0731074106410822min 17s0942min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod .set_CardId(String)
                                          get_Last4()0560%0741071106710832min 17s0952min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod .get_Last4()
                                          set_Last4(String)0640%0751072106610812min 17s0742min 0sMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate.PaymentMethod .set_Last4(String)
                                          SendEmailAsync(String,String,String)0720%0791073107910792min 17s0752min 0sMicrosoft.eShopWeb.Infrastructure .Services.EmailSender.SendEmailAsync (String,String,String)
                                          LogWarning(String,Object[])0710%0831082107810802min 17s0762min 0sMicrosoft.eShopWeb.Infrastructure .Logging.LoggerAdapter<T>.LogWarning (String,Object[])
                                          LogInformation(String,Object[])0730%0841083108110872min 17s0732min 0sMicrosoft.eShopWeb.Infrastructure .Logging.LoggerAdapter<T>.LogInformation (String,Object[])
                                          get_Baskets()0750%0851084108010882min 17s0702min 0sMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.get_Baskets()
                                          get_OrderItems()0740%0801081107710862min 17s0712min 0sMicrosoft.eShopWeb.Infrastructure.Data .CatalogContext.get_OrderItems()
                                          EmailConfirmationLink(IUrlHelper,String ,String,String)0700%0811078107410842min 17s0722min 0sMicrosoft.AspNetCore.Mvc .UrlHelperExtensions .EmailConfirmationLink(IUrlHelper,String ,String,String)
                                          ResetPasswordCallbackLink(IUrlHelper ,String,String,String)0660%0821079107310852min 17s0772min 0sMicrosoft.AspNetCore.Mvc .UrlHelperExtensions .ResetPasswordCallbackLink(IUrlHelper ,String,String,String)
                                          TransformOutbound(Object)00166.67%0593080104620632min 59s0822min 0sMicrosoft.eShopWeb.Web .SlugifyParameterTransformer .TransformOutbound(Object)
                                          ConfigureProductionServices (IServiceCollection)0650%0525047503030546min0832min 0sMicrosoft.eShopWeb.Web.Startup .ConfigureProductionServices (IServiceCollection)
                                          CreateIdentityIfNotCreated (IServiceCollection)00360%0515057204520623min 12s0842min 0sMicrosoft.eShopWeb.Web.Startup .CreateIdentityIfNotCreated (IServiceCollection)
                                          Configure(IApplicationBuilder ,IHostingEnvironment,LinkGenerator)00066.67%008210397011604512min0812min 0sMicrosoft.eShopWeb.Web.Startup.Configure (IApplicationBuilder,IHostingEnvironment ,LinkGenerator)
                                          .ctor(IHttpContextAccessor,LinkGenerator )0670%0583055307610564min 35s0782min 0sMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)
                                          .ctor(IHttpContextAccessor)0690%0622056207510593min 26s0792min 0sMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck..ctor (IHttpContextAccessor)
                                          SendEmailConfirmationAsync(IEmailSender ,String,String)0680%0881086108910902min 17s0802min 0sMicrosoft.eShopWeb.Web.Services .EmailSenderExtensions .SendEmailConfirmationAsync(IEmailSender ,String,String)

                                          Statistics

                                          Stat   Percentage Coverage   # lines of code (LOC)   # lines of code not covered   Cyclomatic Complexity (CC)   Debt   Annual Interest
                                          Sum:836.171 1521 0824497d 0h1d 3h
                                          Average:3.514.844.551.8914min2min 53s
                                          Minimum:00012min 0s2min 0s
                                          Maximum:66.677575153h 46min18min
                                          Standard deviation:13.9911.3411.232.3536min2min 12s
                                          Variance:195.66128.7126.075.54166d4h 51min
                                          warning   Rule Violated:    New Methods should be tested

                                          40 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          40 methodsPercentage Coverage# lines of code (LOC)# lines of code not coveredDebtSeverityFull Name
                                          BuildTargetModel(ModelBuilder)130%007500750210min13HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints .BuildTargetModel(ModelBuilder)
                                          ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)0011.54%012601230010min14HighMicrosoft.eShopWeb.Web.Startup .ListAllRegisteredServices (IApplicationBuilder,LinkGenerator)
                                          OnPostAsync(String)140%021402140110min12HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.OnPostAsync (String)
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)110%039039039min10HighMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          CheckHealthAsync(HealthCheckContext ,CancellationToken)120%068068068min11HighMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck.CheckHealthAsync (HealthCheckContext,CancellationToken)
                                          .ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)150%048048048min18HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel..ctor(IBasketService ,IBasketViewModelService,IUriComposer ,SignInManager<ApplicationUser> ,IOrderService)
                                          GetOrSetBasketCookieAndUserName()180%058058058min19HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel .GetOrSetBasketCookieAndUserName()
                                          Up(MigrationBuilder)190%086086086min17HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Up (MigrationBuilder)
                                          Down(MigrationBuilder)160%076076076min15HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.AddExtraConstraints.Down (MigrationBuilder)
                                          OnPost(Dictionary<String,Int32>)170%115115115min16HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.OnPost(Dictionary<String ,Int32>)
                                          MyAccount()100%095095095min03HighMicrosoft.eShopWeb.Web.Controllers .ManageController.MyAccount()
                                          MyOrders()030%105105105min04HighMicrosoft.eShopWeb.Web.Controllers .OrderController.MyOrders()
                                          SetBasketModelAsync()040%124124124min 40s02HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.SetBasketModelAsync()
                                          .ctor(IHttpContextAccessor,LinkGenerator )010%163163163min 46s00HighMicrosoft.eShopWeb.Web.HealthChecks .ApiHealthCheck..ctor (IHttpContextAccessor,LinkGenerator)
                                          GetBrands()020%153153153min 46s01HighMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetBrands ()
                                          GetTypes()050%133133133min 46s08HighMicrosoft.eShopWeb.Web.Services .CachedCatalogViewModelService.GetTypes( )
                                          OnPostUpdate(Dictionary<String,Int32>)080%143143143min 46s09HighMicrosoft.eShopWeb.Web.Pages.Basket .IndexModel.OnPostUpdate(Dictionary <String,Int32>)
                                          .ctor(IHttpContextAccessor)090%172172172min 53s07HighMicrosoft.eShopWeb.Web.HealthChecks .HomePageHealthCheck..ctor (IHttpContextAccessor)
                                          set_OrderBy(Expression<Func<T,Object>>)060%181181182min 0s05HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderBy(Expression<Func<T,Object>>)
                                          set_OrderByDescending(Expression<Func<T ,Object>>)070%191191192min 0s06HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .set_OrderByDescending(Expression<Func<T ,Object>>)
                                          ApplyOrderBy(Expression<Func<T,Object>>)330%331331332min 0s33HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderBy(Expression<Func<T,Object>> )
                                          ApplyOrderByDescending(Expression<Func<T ,Object>>)340%341341342min 0s34HighMicrosoft.eShopWeb.ApplicationCore .Specifications.BaseSpecification<T> .ApplyOrderByDescending(Expression<Func <T,Object>>)
                                          get_RequestId()320%311311312min 0s32HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_RequestId()
                                          set_RequestId(String)300%321321322min 0s30HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .set_RequestId(String)
                                          get_ShowRequestId()310%351351352min 0s31HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .get_ShowRequestId()
                                          OnGet()380%381381382min 0s38HighMicrosoft.eShopWeb.Web.Pages.ErrorModel .OnGet()
                                          get_CatalogItemId()390%391391392min 0s39HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_CatalogItemId()
                                          get_OldUnitPrice()370%361361362min 0s37HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.get_OldUnitPrice()
                                          set_OldUnitPrice(Decimal)350%371371372min 0s35HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketItemViewModel.set_OldUnitPrice (Decimal)
                                          get_BuyerId()360%301301302min 0s36HighMicrosoft.eShopWeb.Web.Pages.Basket .BasketViewModel.get_BuyerId()
                                          get_BasketModel()230%231231232min 0s23HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.get_BasketModel()
                                          set_BasketModel(BasketViewModel)240%241241242min 0s24HighMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel.set_BasketModel (BasketViewModel)
                                          set_Input(LoginModel+InputModel)220%211211212min 0s22HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel.set_Input (LoginModel+InputModel)
                                          get_ExternalLogins()200%221221222min 0s20HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel .get_ExternalLogins()
                                          get_Email()210%251251252min 0s21HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_Email()
                                          set_Email(String)280%281281282min 0s28HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_Email(String)
                                          get_Password()290%291291292min 0s29HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_Password()
                                          set_Password(String)270%261261262min 0s27HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_Password(String)
                                          get_RememberMe()250%271271272min 0s25HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .get_RememberMe()
                                          set_RememberMe(Boolean)260%201201202min 0s26HighMicrosoft.eShopWeb.Web.Areas.Identity .Pages.Account.LoginModel+InputModel .set_RememberMe(Boolean)
                                          warning   Rule Violated:    Methods refactored should be tested

                                          4 methods matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          4 methodsPercentage Coverage# lines of code (LOC)# lines of code not coveredDebtSeverityFull Name
                                          BuildModel(ModelBuilder)10%075075010min1HighMicrosoft.eShopWeb.Infrastructure.Data .Migrations.CatalogContextModelSnapshot .BuildModel(ModelBuilder)
                                          ConfirmEmail(String,String)00%171717min0HighMicrosoft.eShopWeb.Web.Controllers .AccountController.ConfirmEmail(String ,String)
                                          .ctor(String)30%232323min 46s3HighMicrosoft.eShopWeb.ApplicationCore .Specifications .CustomerOrdersWithItemsSpecification. .ctor(String)
                                          SignOut()20%323232min 53s2HighMicrosoft.eShopWeb.Web.Controllers .AccountController.SignOut()
                                          warning   Rule Violated:    Assemblies Namespaces and Types should be tested

                                          21 code elements parent matched

                                          • Formatting: bold means added, underlined means code was changed, strike-bold means removed (since baseline)
                                          21 code elements parent# lines of code not coveredDebtSeverityFull Name
                                          Microsoft.eShopWeb.Infrastructure.Data .Migrations00279064min 0s06LowMicrosoft.eShopWeb.Infrastructure.Data .Migrations
                                          Microsoft.eShopWeb.Infrastructure .Identity.Migrations01190054min 0s05LowMicrosoft.eShopWeb.Infrastructure .Identity.Migrations
                                          ManageController02189074min 0s07LowMicrosoft.eShopWeb.Web.Controllers .ManageController
                                          Microsoft.eShopWeb.Web.ViewModels.Manage0350094min 0s09LowMicrosoft.eShopWeb.Web.ViewModels.Manage
                                          CheckoutModel0427084min 0s08LowMicrosoft.eShopWeb.Web.Pages.Basket .CheckoutModel
                                          Microsoft.eShopWeb.Web.HealthChecks0522014min 0s01LowMicrosoft.eShopWeb.Web.HealthChecks
                                          OrderService0617004min 0s00LowMicrosoft.eShopWeb.ApplicationCore .Services.OrderService
                                          OrderController0715024min 0s02LowMicrosoft.eShopWeb.Web.Controllers .OrderController
                                          Microsoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate0814044min 0s04LowMicrosoft.eShopWeb.ApplicationCore .Entities.BuyerAggregate
                                          OrderViewModel0913034min 0s03LowMicrosoft.eShopWeb.Web.ViewModels .OrderViewModel
                                          Microsoft.eShopWeb.Web.Views.Manage1012104min 0s10LowMicrosoft.eShopWeb.Web.Views.Manage
                                          OrderItemViewModel11