| ArturRios.Heimdall.Command | 4221 | 85 | 4306 | 17262 | 98% | | 1143 | 1260 | 90.7% | | 773 | 774 | 99.8% | | 718 | 774 | 92.7% | |
| ArturRios.Heimdall.Command.Auditing.AuditingCommandHandler<T1, T2> | 28 | 0 | 28 | 78 | 100% | | 15 | 16 | 93.7% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Auditing.AuditLogWriter | 19 | 0 | 19 | 34 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Auditing.CommandHandlerRegistrationExtensions | 8 | 0 | 8 | 34 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Handlers.AddScopeOwnerCommandHandler | 36 | 1 | 37 | 102 | 97.2% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.AnonymiseExpiredDeletionsCommandHandler | 116 | 2 | 118 | 291 | 98.3% | | 26 | 30 | 86.6% | | 6 | 6 | 100% | | 5 | 6 | 83.3% | |
| ArturRios.Heimdall.Command.Handlers.ConfirmTwoFactorAuthCommandHandler | 62 | 3 | 65 | 224 | 95.3% | | 29 | 32 | 90.6% | | 4 | 4 | 100% | | 2 | 4 | 50% | |
| ArturRios.Heimdall.Command.Handlers.CreateAdminCommandHandler | 41 | 1 | 42 | 94 | 97.6% | | 5 | 6 | 83.3% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.CreateApplicationCommandHandler | 45 | 1 | 46 | 110 | 97.8% | | 13 | 14 | 92.8% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.CreateScopeCommandHandler | 45 | 1 | 46 | 102 | 97.8% | | 9 | 10 | 90% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.CreateScopeOwnerCommandHandler | 50 | 2 | 52 | 114 | 96.1% | | 8 | 10 | 80% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.CreateScopePermissionCommandHandler | 38 | 1 | 39 | 88 | 97.4% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.CreateUserCommandHandler | 60 | 2 | 62 | 142 | 96.7% | | 12 | 14 | 85.7% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.DeleteApplicationCommandHandler | 26 | 1 | 27 | 87 | 96.2% | | 11 | 12 | 91.6% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.DeleteGoogleUserCommandHandler | 27 | 1 | 28 | 107 | 96.4% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.DeletePersonCommandHandler | 51 | 1 | 52 | 151 | 98% | | 21 | 22 | 95.4% | | 4 | 4 | 100% | | 3 | 4 | 75% | |
| ArturRios.Heimdall.Command.Handlers.DeleteScopeCommandHandler | 57 | 2 | 59 | 134 | 96.6% | | 11 | 14 | 78.5% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.DeleteScopePermissionCommandHandler | 33 | 1 | 34 | 91 | 97% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.DisableTwoFactorAuthCommandHandler | 29 | 1 | 30 | 100 | 96.6% | | 13 | 14 | 92.8% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.DiscardPendingRegistrationCommandHandler | 27 | 1 | 28 | 86 | 96.4% | | 12 | 14 | 85.7% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.EnableTwoFactorAuthCommandHandler | 70 | 5 | 75 | 243 | 93.3% | | 35 | 40 | 87.5% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.ExportMyDataCommandHandler | 177 | 3 | 180 | 260 | 98.3% | | 18 | 28 | 64.2% | | 6 | 7 | 85.7% | | 5 | 7 | 71.4% | |
| ArturRios.Heimdall.Command.Handlers.GoogleSignInCommandHandler | 93 | 0 | 93 | 262 | 100% | | 35 | 36 | 97.2% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Handlers.GoogleSignOutCommandHandler | 10 | 0 | 10 | 66 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.HardDeleteApplicationCommandHandler | 14 | 1 | 15 | 60 | 93.3% | | 3 | 4 | 75% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.HardDeleteGoogleUserCommandHandler | 24 | 1 | 25 | 92 | 96% | | 3 | 4 | 75% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.HardDeletePersonCommandHandler | 69 | 2 | 71 | 176 | 97.1% | | 13 | 16 | 81.2% | | 4 | 4 | 100% | | 3 | 4 | 75% | |
| ArturRios.Heimdall.Command.Handlers.HardDeleteScopeCommandHandler | 61 | 2 | 63 | 145 | 96.8% | | 9 | 12 | 75% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.HardDeleteScopePermissionCommandHandler | 14 | 1 | 15 | 59 | 93.3% | | 3 | 4 | 75% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.IssueApplicationCredentialCommandHandler | 34 | 0 | 34 | 83 | 100% | | 10 | 10 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.IssueApplicationTokenCommandHandler | 36 | 0 | 36 | 99 | 100% | | 14 | 14 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.LiftProcessingRestrictionCommandHandler | 61 | 1 | 62 | 152 | 98.3% | | 22 | 24 | 91.6% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.LoginCommandHandler | 104 | 1 | 105 | 315 | 99% | | 29 | 30 | 96.6% | | 7 | 7 | 100% | | 6 | 7 | 85.7% | |
| ArturRios.Heimdall.Command.Handlers.PasswordRecoveryCommandHandler | 12 | 0 | 12 | 61 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.PromoteScopeUserCommandHandler | 51 | 1 | 52 | 130 | 98% | | 17 | 18 | 94.4% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.PseudonymiseAuditActorsCommandHandler | 69 | 2 | 71 | 197 | 97.1% | | 12 | 14 | 85.7% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.PurgeExpiredTokensCommandHandler | 78 | 1 | 79 | 180 | 98.7% | | 5 | 8 | 62.5% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.ReapplyErasuresCommandHandler | 74 | 6 | 80 | 182 | 92.5% | | 17 | 22 | 77.2% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.RegenerateRecoveryCodesCommandHandler | 48 | 3 | 51 | 155 | 94.1% | | 21 | 24 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.RegisterCommandHandler | 20 | 0 | 20 | 71 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.RemoveScopeOwnerCommandHandler | 30 | 1 | 31 | 97 | 96.7% | | 11 | 12 | 91.6% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.RequestErasureCommandHandler | 101 | 2 | 103 | 307 | 98% | | 38 | 42 | 90.4% | | 9 | 9 | 100% | | 7 | 9 | 77.7% | |
| ArturRios.Heimdall.Command.Handlers.ResendTwoFactorChallengeCodeCommandHandler | 39 | 1 | 40 | 163 | 97.5% | | 20 | 22 | 90.9% | | 4 | 4 | 100% | | 3 | 4 | 75% | |
| ArturRios.Heimdall.Command.Handlers.ResendVerificationEmailCommandHandler | 29 | 1 | 30 | 116 | 96.6% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.ResetPasswordCommandHandler | 48 | 2 | 50 | 186 | 96% | | 18 | 20 | 90% | | 3 | 3 | 100% | | 1 | 3 | 33.3% | |
| ArturRios.Heimdall.Command.Handlers.RestrictProcessingCommandHandler | 39 | 1 | 40 | 109 | 97.5% | | 11 | 14 | 78.5% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.RevokeApplicationCredentialCommandHandler | 27 | 0 | 27 | 77 | 100% | | 8 | 8 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.SendPersonPasswordResetCommandHandler | 31 | 0 | 31 | 93 | 100% | | 10 | 10 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.SendPersonVerificationEmailCommandHandler | 35 | 0 | 35 | 109 | 100% | | 14 | 14 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Handlers.SetGoogleSignInCommandHandler | 38 | 1 | 39 | 97 | 97.4% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.SetScopeEmailLinksCommandHandler | 41 | 1 | 42 | 87 | 97.6% | | 9 | 10 | 90% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Command.Handlers.SetSelfRegistrationCommandHandler | 39 | 1 | 40 | 82 | 97.5% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.UpdateApplicationCommandHandler | 49 | 1 | 50 | 127 | 98% | | 15 | 16 | 93.7% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.UpdatePersonCommandHandler | 170 | 6 | 176 | 523 | 96.5% | | 115 | 122 | 94.2% | | 14 | 14 | 100% | | 12 | 14 | 85.7% | |
| ArturRios.Heimdall.Command.Handlers.UpdateScopeCommandHandler | 43 | 1 | 44 | 97 | 97.7% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.UpdateScopePermissionCommandHandler | 37 | 1 | 38 | 93 | 97.3% | | 7 | 8 | 87.5% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Handlers.VerifyEmailCommandHandler | 59 | 2 | 61 | 193 | 96.7% | | 26 | 28 | 92.8% | | 3 | 3 | 100% | | 1 | 3 | 33.3% | |
| ArturRios.Heimdall.Command.Handlers.VerifyTwoFactorAuthCommandHandler | 74 | 1 | 75 | 220 | 98.6% | | 42 | 44 | 95.4% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Command.Input.AddScopeOwnerCommand | 4 | 0 | 4 | 24 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.ConfirmTwoFactorAuthCommand | 4 | 0 | 4 | 28 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.CreateAdminCommand | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.CreateApplicationCommand | 5 | 0 | 5 | 29 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Input.CreateScopeCommand | 3 | 0 | 3 | 24 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.CreateScopeOwnerCommand | 6 | 0 | 6 | 31 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Input.CreateScopePermissionCommand | 6 | 0 | 6 | 38 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Input.CreateUserCommand | 6 | 0 | 6 | 30 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Input.DeleteApplicationCommand | 4 | 0 | 4 | 25 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.DeleteGoogleUserCommand | 4 | 0 | 4 | 24 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.DeletePersonCommand | 3 | 0 | 3 | 21 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.DeleteScopeCommand | 1 | 0 | 1 | 14 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.DeleteScopePermissionCommand | 4 | 0 | 4 | 24 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.DisableTwoFactorAuthCommand | 5 | 0 | 5 | 32 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Input.DiscardPendingRegistrationCommand | 4 | 0 | 4 | 22 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.EnableTwoFactorAuthCommand | 4 | 0 | 4 | 31 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.ExportMyDataCommand | 2 | 0 | 2 | 32 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.GoogleSignInCommand | 3 | 0 | 3 | 33 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.GoogleSignOutCommand | 2 | 0 | 2 | 23 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.HardDeleteApplicationCommand | 2 | 0 | 2 | 21 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.HardDeleteGoogleUserCommand | 2 | 0 | 2 | 20 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.HardDeletePersonCommand | 3 | 0 | 3 | 22 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.HardDeleteScopeCommand | 1 | 0 | 1 | 15 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.HardDeleteScopePermissionCommand | 2 | 0 | 2 | 20 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.IssueApplicationCredentialCommand | 5 | 0 | 5 | 29 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Input.IssueApplicationTokenCommand | 3 | 0 | 3 | 20 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.LiftProcessingRestrictionCommand | 4 | 0 | 4 | 43 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.LoginCommand | 3 | 0 | 3 | 24 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.PasswordRecoveryCommand | 2 | 0 | 2 | 22 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.PromoteScopeUserCommand | 4 | 0 | 4 | 24 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.ReapplyErasuresCommand | 3 | 0 | 3 | 39 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.RegenerateRecoveryCodesCommand | 4 | 0 | 4 | 32 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.RegisterCommand | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.RemoveScopeOwnerCommand | 4 | 0 | 4 | 24 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.RequestErasureCommand | 4 | 0 | 4 | 38 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.ResendTwoFactorChallengeCodeCommand | 1 | 0 | 1 | 19 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.ResendVerificationEmailCommand | 2 | 0 | 2 | 21 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.ResetPasswordCommand | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.RestrictProcessingCommand | 3 | 0 | 3 | 29 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.RevokeApplicationCredentialCommand | 5 | 0 | 5 | 30 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Input.SendPersonPasswordResetCommand | 3 | 0 | 3 | 20 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.SendPersonVerificationEmailCommand | 3 | 0 | 3 | 20 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.SetGoogleSignInCommand | 4 | 0 | 4 | 34 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.SetScopeEmailLinksCommand | 5 | 0 | 5 | 35 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Input.SetSelfRegistrationCommand | 4 | 0 | 4 | 25 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Input.UpdateApplicationCommand | 6 | 0 | 6 | 41 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Input.UpdatePersonCommand | 8 | 0 | 8 | 51 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Command.Input.UpdateScopeCommand | 5 | 0 | 5 | 41 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Input.UpdateScopePermissionCommand | 7 | 0 | 7 | 45 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.CreateAdminCommandValidator | 14 | 0 | 14 | 31 | 100% | | 2 | 2 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.CreateApplicationCommandValidator | 7 | 0 | 7 | 21 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.CreateScopeCommandValidator | 13 | 0 | 13 | 34 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.CreateScopeOwnerCommandValidator | 11 | 0 | 11 | 26 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.CreateScopePermissionCommandValidator | 7 | 0 | 7 | 23 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.CreateUserCommandValidator | 5 | 0 | 5 | 17 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.EnableTwoFactorAuthCommandValidator | 7 | 0 | 7 | 23 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.IssueApplicationCredentialCommandValidator | 5 | 0 | 5 | 16 | 100% | | 2 | 2 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.IssueApplicationTokenCommandValidator | 9 | 0 | 9 | 24 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.LoginCommandValidator | 7 | 0 | 7 | 27 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.PasswordRecoveryCommandValidator | 5 | 0 | 5 | 25 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.PersonFieldRules | 7 | 0 | 7 | 24 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.RegisterCommandValidator | 6 | 0 | 6 | 19 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.ResetPasswordCommandValidator | 7 | 0 | 7 | 27 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.SetGoogleSignInCommandValidator | 5 | 0 | 5 | 19 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.SetScopeEmailLinksCommandValidator | 12 | 0 | 12 | 33 | 100% | | 8 | 8 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.SetSelfRegistrationCommandValidator | 5 | 0 | 5 | 15 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.UpdateApplicationCommandValidator | 7 | 0 | 7 | 23 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.UpdatePersonCommandValidator | 12 | 0 | 12 | 31 | 100% | | 4 | 4 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.UpdateScopeCommandValidator | 25 | 0 | 25 | 55 | 100% | | 9 | 10 | 90% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.UpdateScopePermissionCommandValidator | 7 | 0 | 7 | 25 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.Validation.VerifyEmailCommandValidator | 4 | 0 | 4 | 22 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Input.VerifyEmailCommand | 2 | 0 | 2 | 20 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Input.VerifyTwoFactorAuthCommand | 3 | 0 | 3 | 24 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.AddScopeOwnerCommandOutput | 3 | 0 | 3 | 26 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.AnonymiseExpiredDeletionsCommandOutput | 5 | 0 | 5 | 35 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Output.ConfirmTwoFactorAuthCommandOutput | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.CreateApplicationCommandOutput | 5 | 0 | 5 | 26 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Output.CreatePersonCommandOutput | 7 | 0 | 7 | 32 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Output.CreateScopeCommandOutput | 9 | 0 | 9 | 37 | 100% | | 0 | 0 | | | 9 | 9 | 100% | | 9 | 9 | 100% | |
| ArturRios.Heimdall.Command.Output.CreateScopePermissionCommandOutput | 6 | 0 | 6 | 32 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportApplication | 4 | 0 | 4 | 245 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportAuditEntry | 6 | 0 | 6 | 245 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportCommandOutput | 14 | 0 | 14 | 245 | 100% | | 0 | 0 | | | 14 | 14 | 100% | | 14 | 14 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportErasure | 7 | 0 | 7 | 245 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportProcessing | 4 | 0 | 4 | 245 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportRecipient | 3 | 0 | 3 | 245 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportRetention | 2 | 0 | 2 | 245 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportSecurity | 16 | 0 | 16 | 245 | 100% | | 0 | 0 | | | 16 | 16 | 100% | | 16 | 16 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportSource | 3 | 0 | 3 | 245 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportSubject | 11 | 0 | 11 | 245 | 100% | | 0 | 0 | | | 11 | 11 | 100% | | 11 | 11 | 100% | |
| ArturRios.Heimdall.Command.Output.DataExportWithheld | 2 | 0 | 2 | 245 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.DeleteApplicationCommandOutput | 2 | 0 | 2 | 21 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.DeleteGoogleUserCommandOutput | 2 | 0 | 2 | 22 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.DeletePersonCommandOutput | 2 | 0 | 2 | 20 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.DeleteScopeCommandOutput | 4 | 0 | 4 | 27 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Output.DeleteScopePermissionCommandOutput | 2 | 0 | 2 | 21 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.DisableTwoFactorAuthCommandOutput | 1 | 0 | 1 | 14 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.DiscardPendingRegistrationCommandOutput | 1 | 0 | 1 | 13 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.EnableTwoFactorAuthCommandOutput | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.GoogleSignInCommandOutput | 4 | 0 | 4 | 42 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Output.HardDeleteApplicationCommandOutput | 1 | 0 | 1 | 16 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.HardDeleteGoogleUserCommandOutput | 1 | 0 | 1 | 15 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.HardDeletePersonCommandOutput | 3 | 0 | 3 | 20 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.HardDeleteScopeCommandOutput | 5 | 0 | 5 | 30 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Output.HardDeleteScopePermissionCommandOutput | 1 | 0 | 1 | 14 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.IssueApplicationCredentialCommandOutput | 4 | 0 | 4 | 18 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Output.IssueApplicationTokenCommandOutput | 3 | 0 | 3 | 17 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.LiftProcessingRestrictionCommandOutput | 3 | 0 | 3 | 19 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.LoginCommandOutput | 7 | 0 | 7 | 58 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Output.PromoteScopeUserCommandOutput | 8 | 0 | 8 | 37 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Command.Output.PseudonymiseAuditActorsCommandOutput | 3 | 0 | 3 | 28 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.PurgeExpiredTokensCommandOutput | 8 | 0 | 8 | 39 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Output.ReapplyErasuresCommandOutput | 3 | 0 | 3 | 21 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.RegenerateRecoveryCodesCommandOutput | 1 | 0 | 1 | 14 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.RemoveScopeOwnerCommandOutput | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.RequestErasureCommandOutput | 7 | 0 | 7 | 50 | 100% | | 2 | 2 | 100% | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Output.RestrictProcessingCommandOutput | 3 | 0 | 3 | 16 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Output.RevokeApplicationCredentialCommandOutput | 2 | 0 | 2 | 11 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Output.SendPersonPasswordResetCommandOutput | 1 | 0 | 1 | 13 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.SendPersonVerificationEmailCommandOutput | 1 | 0 | 1 | 13 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Output.SetGoogleSignInCommandOutput | 9 | 0 | 9 | 40 | 100% | | 0 | 0 | | | 9 | 9 | 100% | | 9 | 9 | 100% | |
| ArturRios.Heimdall.Command.Output.SetScopeEmailLinksCommandOutput | 10 | 0 | 10 | 29 | 100% | | 0 | 0 | | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Command.Output.SetSelfRegistrationCommandOutput | 10 | 0 | 10 | 29 | 100% | | 0 | 0 | | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Command.Output.UpdateApplicationCommandOutput | 6 | 0 | 6 | 29 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Output.UpdatePersonCommandOutput | 9 | 0 | 9 | 41 | 100% | | 0 | 0 | | | 9 | 9 | 100% | | 9 | 9 | 100% | |
| ArturRios.Heimdall.Command.Output.UpdateScopeCommandOutput | 10 | 0 | 10 | 40 | 100% | | 0 | 0 | | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Command.Output.UpdateScopePermissionCommandOutput | 7 | 0 | 7 | 35 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Output.VerifyTwoFactorAuthCommandOutput | 4 | 0 | 4 | 34 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Services.AccountEmailBudget | 25 | 0 | 25 | 112 | 100% | | 27 | 32 | 84.3% | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Command.Services.AdminEmailOptions | 17 | 0 | 17 | 98 | 100% | | 10 | 10 | 100% | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Services.ApplicationCredentialSecret | 5 | 0 | 5 | 38 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Services.ApplicationTokenSubject | 1 | 0 | 1 | 15 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.AuthToken | 1 | 0 | 1 | 62 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.AuthTokenSubject | 7 | 0 | 7 | 62 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Services.DataExportDisclosure | 72 | 0 | 72 | 134 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Services.EmailVerificationOptions | 5 | 0 | 5 | 22 | 100% | | 1 | 2 | 50% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Services.EmailVerificationService | 28 | 0 | 28 | 60 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Services.EmailVerificationTokenRetirement | 10 | 0 | 10 | 48 | 100% | | 4 | 4 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.GoogleIdTokenPayload | 7 | 0 | 7 | 50 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Command.Services.IdentityAnonymiser | 19 | 0 | 19 | 111 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.IssuedRecoveryCode | 1 | 0 | 1 | 208 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.LastScopeOwnerGuard | 9 | 0 | 9 | 50 | 100% | | 2 | 2 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.LegalBasisRecorder | 14 | 0 | 14 | 77 | 100% | | 12 | 12 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordHashGate | 33 | 0 | 33 | 184 | 100% | | 6 | 6 | 100% | | 12 | 12 | 100% | | 12 | 12 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordHashGateSaturatedException | 1 | 0 | 1 | 184 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordRecoveryEligibility | 11 | 0 | 11 | 66 | 100% | | 16 | 16 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordRecoveryProcessor | 39 | 0 | 39 | 107 | 100% | | 8 | 8 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordRecoveryRequest | 1 | 0 | 1 | 21 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordResetOptions | 5 | 0 | 5 | 24 | 100% | | 1 | 2 | 50% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordResetService | 28 | 0 | 28 | 66 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Services.PasswordResetTokenRetirement | 9 | 1 | 10 | 49 | 90% | | 3 | 4 | 75% | | 1 | 1 | 100% | | 0 | 1 | 0% | |
| ArturRios.Heimdall.Command.Services.PendingRegistrationConfirmation | 3 | 0 | 3 | 236 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.PendingRegistrationConfirmer | 73 | 6 | 79 | 236 | 92.4% | | 36 | 40 | 90% | | 5 | 5 | 100% | | 3 | 5 | 60% | |
| ArturRios.Heimdall.Command.Services.PersonAuthTokenService | 21 | 0 | 21 | 64 | 100% | | 10 | 10 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Command.Services.PersonDependentsRemoval | 31 | 0 | 31 | 85 | 100% | | 6 | 8 | 75% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.PersonEmailAuthorization | 8 | 0 | 8 | 36 | 100% | | 8 | 8 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.ReauthenticationBudget | 5 | 0 | 5 | 52 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.RecoveryCodes | 52 | 0 | 52 | 208 | 100% | | 34 | 34 | 100% | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Command.Services.RegistrationProcessor | 63 | 0 | 63 | 164 | 100% | | 22 | 22 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.RegistrationRequest | 6 | 0 | 6 | 26 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Command.Services.SecondFactorLockout | 8 | 0 | 8 | 60 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Command.Services.SingleUseToken | 8 | 0 | 8 | 20 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.SingleUseTokenHash | 1 | 0 | 1 | 52 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.TotpCodeVerifier | 15 | 0 | 15 | 60 | 100% | | 6 | 6 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.TotpSecretProtector | 5 | 0 | 5 | 33 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Command.Services.TwoFactorChallengePrincipal | 1 | 0 | 1 | 47 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.TwoFactorEmailCodeIssuer | 37 | 3 | 40 | 83 | 92.5% | | 5 | 8 | 62.5% | | 3 | 3 | 100% | | 1 | 3 | 33.3% | |
| ArturRios.Heimdall.Command.Services.TwoFactorEmailCodeVerification | 19 | 0 | 19 | 95 | 100% | | 12 | 12 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Command.Services.TwoFactorFactorVerificationResult | 8 | 0 | 8 | 48 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Command.Services.TwoFactorFactorVerifier | 28 | 0 | 28 | 84 | 100% | | 14 | 14 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Data | 43816 | 627 | 44443 | 49002 | 98.5% | | 106 | 128 | 82.8% | | 170 | 208 | 81.7% | | 166 | 208 | 79.8% | |
| ArturRios.Heimdall.Data.Configuration.AppDbContext | 46 | 0 | 46 | 83 | 100% | | 0 | 0 | | | 22 | 22 | 100% | | 22 | 22 | 100% | |
| ArturRios.Heimdall.Data.Configuration.DbContextDiagnosticsOptions | 3 | 0 | 3 | 18 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Data.Configuration.DesignTimeDbContextFactory | 0 | 10 | 10 | 36 | 0% | | 0 | 2 | 0% | | 0 | 1 | 0% | | 0 | 1 | 0% | |
| ArturRios.Heimdall.Data.EntityMaps.ApplicationCredentialDbMap | 13 | 0 | 13 | 33 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.ApplicationDbMap | 19 | 0 | 19 | 41 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.AttemptNoticeBudgetDbMap | 8 | 0 | 8 | 26 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.AuditLogDbMap | 10 | 0 | 10 | 28 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.EmailVerificationTokenDbMap | 12 | 0 | 12 | 29 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.ErasedSubjectDbMap | 7 | 0 | 7 | 28 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.GoogleUserDbMap | 33 | 0 | 33 | 77 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.PasswordResetTokenDbMap | 12 | 0 | 12 | 29 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.PendingRegistrationDbMap | 19 | 0 | 19 | 39 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.PersonDbMap | 49 | 0 | 49 | 127 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.RoleDbMap | 8 | 0 | 8 | 30 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.ScopeDbMap | 16 | 0 | 16 | 39 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.ScopeOwnerDbMap | 11 | 0 | 11 | 28 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.ScopePermissionDbMap | 16 | 0 | 16 | 36 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.ScopeUserDbMap | 11 | 0 | 11 | 30 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.TwoFactorAuthDbMap | 18 | 0 | 18 | 43 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.TwoFactorEmailCodeDbMap | 13 | 0 | 13 | 32 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.EntityMaps.TwoFactorRecoveryCodeDbMap | 12 | 0 | 12 | 31 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.Migrations.AddAccountEmailBudget | 1394 | 13 | 1407 | 1500 | 99% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddApplicationCredential | 1315 | 4 | 1319 | 1410 | 99.6% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddAttemptNoticeBudget | 1389 | 4 | 1393 | 1486 | 99.7% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddAuditLog | 914 | 4 | 918 | 993 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddAuditLogOutcome | 963 | 9 | 972 | 1057 | 99% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddAuditLogTargetIndex | 1198 | 5 | 1203 | 1286 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddBruteForceGuardsAndEmailUniqueness | 952 | 26 | 978 | 1093 | 97.3% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddDataProtectionKeys | 953 | 4 | 957 | 1031 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddErasedSubject | 1343 | 8 | 1351 | 1469 | 99.4% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddFactorBudgets | 1366 | 25 | 1391 | 1490 | 98.2% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddPendingRegistration | 1211 | 4 | 1215 | 1294 | 99.6% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddPendingRegistrationPublicId | 1213 | 9 | 1222 | 1314 | 99.2% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddPersonScopeId | 936 | 6 | 942 | 1042 | 99.3% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddPersonSecurityStamp | 1310 | 5 | 1315 | 1412 | 99.6% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddScopeEmailLinks | 1204 | 9 | 1213 | 1290 | 99.2% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddScopePermission | 693 | 4 | 697 | 765 | 99.4% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddScopeSelfRegistration | 1106 | 5 | 1111 | 1184 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddTwoFactorAuth | 850 | 7 | 857 | 932 | 99.1% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AddTwoFactorRecoveryCode | 873 | 4 | 877 | 951 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AllowClearingAuditActor | 1065 | 11 | 1076 | 1182 | 98.9% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AllowClearingAuditTarget | 1378 | 63 | 1441 | 1556 | 95.6% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AllowClearingErasedSubjectTarget | 1405 | 97 | 1502 | 1616 | 93.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AnonymiseDeletedIdentities | 1040 | 33 | 1073 | 1181 | 96.9% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.AppDbContextModelSnapshot | 1374 | 0 | 1374 | 1433 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Data.Migrations.CapChallengeCodeReissues | 1090 | 5 | 1095 | 1177 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.CapChallengeGuesses | 1100 | 5 | 1105 | 1186 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.HardenPendingRegistration | 1196 | 14 | 1210 | 1287 | 98.8% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.HashSingleUseTokens | 1004 | 47 | 1051 | 1183 | 95.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.InitialCreate | 908 | 28 | 936 | 1036 | 97% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.MakeAuditLogAppendOnly | 977 | 5 | 982 | 1094 | 99.4% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.ProtectEntityPublicIds | 1347 | 16 | 1363 | 1471 | 98.8% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.ProtectIdentityPublicIds | 1387 | 10 | 1397 | 1534 | 99.2% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.RecordErasureRequests | 1044 | 25 | 1069 | 1153 | 97.6% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.RecordLegalBasis | 1098 | 33 | 1131 | 1235 | 97% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.RefineAuditLog | 916 | 18 | 934 | 1010 | 98% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.ReleaseStuckLoginLockouts | 1304 | 1 | 1305 | 1404 | 99.9% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.RestrictProcessing | 1125 | 33 | 1158 | 1254 | 97.1% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Migrations.TrackOutstandingChallenge | 1093 | 5 | 1098 | 1181 | 99.5% | | 0 | 0 | | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.Data.Persistence.ApplicationCredentialSlots | 28 | 0 | 28 | 54 | 100% | | 6 | 8 | 75% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Data.Persistence.AtomicWrites | 336 | 0 | 336 | 655 | 100% | | 79 | 86 | 91.8% | | 35 | 35 | 100% | | 35 | 35 | 100% | |
| ArturRios.Heimdall.Data.Persistence.AttemptNoticeBudgets | 14 | 0 | 14 | 50 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Data.Persistence.ErasedSubjects | 16 | 1 | 17 | 54 | 94.1% | | 1 | 2 | 50% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Data.Seeding.DatabaseSeeder | 44 | 12 | 56 | 124 | 78.5% | | 13 | 20 | 65% | | 6 | 6 | 100% | | 3 | 6 | 50% | |
| ArturRios.Heimdall.Data.Seeding.MasterUserOptions | 8 | 0 | 8 | 30 | 100% | | 7 | 10 | 70% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Domain | 186 | 2 | 188 | 1370 | 98.9% | | 0 | 0 | | | 185 | 187 | 98.9% | | 185 | 187 | 98.9% | |
| ArturRios.Heimdall.Domain.Entities.Application | 10 | 0 | 10 | 50 | 100% | | 0 | 0 | | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Domain.Entities.ApplicationCredential | 11 | 0 | 11 | 77 | 100% | | 0 | 0 | | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Domain.Entities.AttemptNoticeBudget | 5 | 0 | 5 | 57 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Domain.Entities.AuditLog | 8 | 0 | 8 | 95 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Domain.Entities.EmailVerificationToken | 5 | 0 | 5 | 35 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Domain.Entities.ErasedSubject | 2 | 0 | 2 | 49 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Domain.Entities.GoogleUser | 23 | 0 | 23 | 166 | 100% | | 0 | 0 | | | 23 | 23 | 100% | | 23 | 23 | 100% | |
| ArturRios.Heimdall.Domain.Entities.PasswordResetToken | 5 | 0 | 5 | 35 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Domain.Entities.PendingRegistration | 11 | 0 | 11 | 64 | 100% | | 0 | 0 | | | 11 | 11 | 100% | | 11 | 11 | 100% | |
| ArturRios.Heimdall.Domain.Entities.Person | 42 | 0 | 42 | 304 | 100% | | 0 | 0 | | | 42 | 42 | 100% | | 42 | 42 | 100% | |
| ArturRios.Heimdall.Domain.Entities.Role | 4 | 0 | 4 | 30 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Domain.Entities.Scope | 17 | 0 | 17 | 109 | 100% | | 0 | 0 | | | 17 | 17 | 100% | | 17 | 17 | 100% | |
| ArturRios.Heimdall.Domain.Entities.ScopeOwner | 4 | 0 | 4 | 27 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Domain.Entities.ScopePermission | 9 | 0 | 9 | 51 | 100% | | 0 | 0 | | | 9 | 9 | 100% | | 9 | 9 | 100% | |
| ArturRios.Heimdall.Domain.Entities.ScopeUser | 4 | 0 | 4 | 27 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Domain.Entities.TwoFactorAuth | 14 | 0 | 14 | 105 | 100% | | 0 | 0 | | | 14 | 14 | 100% | | 14 | 14 | 100% | |
| ArturRios.Heimdall.Domain.Entities.TwoFactorEmailCode | 8 | 0 | 8 | 47 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Domain.Entities.TwoFactorRecoveryCode | 4 | 2 | 6 | 42 | 66.6% | | 0 | 0 | | | 4 | 6 | 66.6% | | 4 | 6 | 66.6% | |
| ArturRios.Heimdall.Query | 1070 | 6 | 1076 | 3411 | 99.4% | | 189 | 196 | 96.4% | | 254 | 254 | 100% | | 248 | 254 | 97.6% | |
| ArturRios.Heimdall.Query.Handlers.CheckApplicationTokenQueryHandler | 28 | 0 | 28 | 63 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.DetectSecuritySignalsQueryHandler | 54 | 0 | 54 | 128 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetApplicationByIdQueryHandler | 30 | 0 | 30 | 77 | 100% | | 10 | 10 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetDetailedHealthQueryHandler | 20 | 0 | 20 | 47 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetGoogleUserByIdQueryHandler | 37 | 0 | 37 | 91 | 100% | | 6 | 6 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetPersonByIdQueryHandler | 57 | 0 | 57 | 141 | 100% | | 21 | 22 | 95.4% | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetScopeByIdQueryHandler | 42 | 0 | 42 | 92 | 100% | | 8 | 8 | 100% | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetScopePermissionByIdQueryHandler | 28 | 0 | 28 | 70 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.GetTwoFactorStatusQueryHandler | 37 | 0 | 37 | 89 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.ListApplicationCredentialsQueryHandler | 31 | 0 | 31 | 62 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.ListAuditLogQueryHandler | 40 | 0 | 40 | 106 | 100% | | 14 | 14 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.ListErasureRequestsQueryHandler | 43 | 1 | 44 | 106 | 97.7% | | 5 | 6 | 83.3% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Query.Handlers.ListPendingRegistrationsQueryHandler | 35 | 0 | 35 | 97 | 100% | | 6 | 6 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.ListScopeAdminsQueryHandler | 44 | 0 | 44 | 129 | 100% | | 16 | 16 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.ListScopeApplicationsQueryHandler | 38 | 1 | 39 | 112 | 97.4% | | 13 | 14 | 92.8% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Query.Handlers.ListScopeGoogleUsersQueryHandler | 41 | 1 | 42 | 119 | 97.6% | | 11 | 12 | 91.6% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Query.Handlers.ListScopeOwnersQueryHandler | 50 | 1 | 51 | 120 | 98% | | 13 | 14 | 92.8% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Query.Handlers.ListScopePermissionsQueryHandler | 35 | 1 | 36 | 101 | 97.2% | | 9 | 10 | 90% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Query.Handlers.ListScopePersonsQueryHandler | 50 | 1 | 51 | 122 | 98% | | 13 | 14 | 92.8% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.Query.Handlers.ListScopesQueryHandler | 37 | 0 | 37 | 100 | 100% | | 10 | 10 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Handlers.ListSystemAdminsQueryHandler | 28 | 0 | 28 | 80 | 100% | | 6 | 6 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.HealthChecks.DatabaseHealthCheck | 7 | 0 | 7 | 31 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Query.Input.CheckApplicationTokenQuery | 1 | 0 | 1 | 12 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.GetApplicationByIdQuery | 5 | 0 | 5 | 26 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Input.GetGoogleUserByIdQuery | 5 | 0 | 5 | 31 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Input.GetPersonByIdQuery | 4 | 0 | 4 | 23 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Input.GetScopeByIdQuery | 4 | 0 | 4 | 23 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Input.GetScopePermissionByIdQuery | 5 | 0 | 5 | 26 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Input.GetTwoFactorStatusQuery | 2 | 0 | 2 | 22 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Input.ListApplicationCredentialsQuery | 4 | 0 | 4 | 16 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Input.ListAuditLogQuery | 8 | 0 | 8 | 51 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Query.Input.ListErasureRequestsQuery | 3 | 0 | 3 | 31 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Query.Input.ListPendingRegistrationsQuery | 3 | 0 | 3 | 23 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopeAdminsQuery | 5 | 0 | 5 | 44 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopeApplicationsQuery | 6 | 0 | 6 | 39 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopeGoogleUsersQuery | 6 | 0 | 6 | 35 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopeOwnersQuery | 6 | 0 | 6 | 35 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopePermissionsQuery | 5 | 0 | 5 | 34 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopePersonsQuery | 6 | 0 | 6 | 35 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Query.Input.ListScopesQuery | 4 | 0 | 4 | 28 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Input.ListSystemAdminsQuery | 4 | 0 | 4 | 33 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListAuditLogQueryValidator | 9 | 0 | 9 | 26 | 100% | | 4 | 4 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopeAdminsQueryValidator | 8 | 0 | 8 | 20 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopeApplicationsQueryValidator | 5 | 0 | 5 | 16 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopeGoogleUsersQueryValidator | 8 | 0 | 8 | 20 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopeOwnersQueryValidator | 8 | 0 | 8 | 20 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopePermissionsQueryValidator | 5 | 0 | 5 | 16 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopePersonsQueryValidator | 8 | 0 | 8 | 20 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListScopesQueryValidator | 5 | 0 | 5 | 16 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.ListSystemAdminsQueryValidator | 8 | 0 | 8 | 20 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Input.Validation.PaginatedQueryValidator<T> | 8 | 0 | 8 | 39 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Output.ApplicationCredentialListOutput | 1 | 0 | 1 | 13 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Query.Output.ApplicationCredentialOutput | 6 | 0 | 6 | 23 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Query.Output.ApplicationOutput | 7 | 0 | 7 | 32 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Query.Output.ApplicationTokenCheckOutput | 5 | 0 | 5 | 19 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.Query.Output.AuditLogEntryOutput | 8 | 0 | 8 | 34 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Query.Output.ErasureRequestOutput | 6 | 0 | 6 | 32 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.Query.Output.GoogleUserOutput | 10 | 0 | 10 | 47 | 100% | | 0 | 0 | | | 10 | 10 | 100% | | 10 | 10 | 100% | |
| ArturRios.Heimdall.Query.Output.HealthCheckOutput | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Output.PendingRegistrationOutput | 7 | 0 | 7 | 39 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.Query.Output.PersonOutput | 11 | 0 | 11 | 54 | 100% | | 0 | 0 | | | 11 | 11 | 100% | | 11 | 11 | 100% | |
| ArturRios.Heimdall.Query.Output.PersonSummaryOutput | 3 | 0 | 3 | 29 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Query.Output.ScopeOutput | 13 | 0 | 13 | 52 | 100% | | 0 | 0 | | | 13 | 13 | 100% | | 13 | 13 | 100% | |
| ArturRios.Heimdall.Query.Output.ScopePermissionOutput | 8 | 0 | 8 | 38 | 100% | | 0 | 0 | | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.Query.Output.SecuritySignal | 4 | 0 | 4 | 38 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Query.Output.SecuritySignalsOutput | 3 | 0 | 3 | 38 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.Query.Output.ServiceHealthOutput | 2 | 0 | 2 | 13 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Query.Output.TwoFactorStatusOutput | 4 | 0 | 4 | 28 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.Shared | 619 | 0 | 619 | 1451 | 100% | | 40 | 40 | 100% | | 43 | 43 | 100% | | 43 | 43 | 100% | |
| ArturRios.Heimdall.Shared.Messages.ApplicationCredentialMessageMap | 22 | 0 | 22 | 30 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.ApplicationMessageMap | 42 | 0 | 42 | 53 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.ApplicationTokenMessageMap | 19 | 0 | 19 | 27 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.AuditMessageMap | 12 | 0 | 12 | 27 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.AuthMessageMap | 75 | 0 | 75 | 86 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.DataAccessMessageMap | 24 | 0 | 24 | 72 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Shared.Messages.ErasureMessageMap | 34 | 0 | 34 | 45 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.GoogleUserMessageMap | 30 | 0 | 30 | 41 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.PersonMessageMap | 95 | 0 | 95 | 106 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.RequestMessageMap | 5 | 0 | 5 | 13 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.ScopeMessageMap | 57 | 0 | 57 | 69 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.ScopePermissionMessageMap | 34 | 0 | 34 | 48 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Messages.TwoFactorMessageMap | 47 | 0 | 47 | 58 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Retention.DataRetentionOptions | 78 | 0 | 78 | 393 | 100% | | 20 | 20 | 100% | | 20 | 20 | 100% | | 20 | 20 | 100% | |
| ArturRios.Heimdall.Shared.Security.ApplicationTokenPrincipal | 1 | 0 | 1 | 21 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Security.LogSafeEmail | 4 | 0 | 4 | 57 | 100% | | 2 | 2 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Security.TwoFactorLifetimes | 2 | 0 | 2 | 55 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Services.ApplicationAccessResult | 1 | 0 | 1 | 74 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Services.ApplicationManagementAccess | 17 | 0 | 17 | 74 | 100% | | 8 | 8 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Services.OwnedScopeVisibility | 7 | 0 | 7 | 48 | 100% | | 2 | 2 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.Shared.Services.ScopeOwnershipChecker | 7 | 0 | 7 | 29 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.Shared.Time.UtcInstant | 6 | 0 | 6 | 25 | 100% | | 4 | 4 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi | 1966 | 221 | 2187 | 8878 | 89.8% | | 495 | 630 | 78.5% | | 300 | 319 | 94% | | 281 | 319 | 88% | |
| ArturRios.Heimdall.WebApi.Binding.MalformedRequestFilter | 8 | 0 | 8 | 52 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Binding.ModelBindingConfiguration | 3 | 0 | 3 | 52 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Binding.ServerPopulatedBindingMetadataProvider | 3 | 0 | 3 | 52 | 100% | | 2 | 2 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.ApplicationController | 36 | 0 | 36 | 144 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.ApplicationCredentialController | 21 | 0 | 21 | 87 | 100% | | 2 | 2 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.ApplicationTokenController | 14 | 0 | 14 | 78 | 100% | | 2 | 2 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.AuditController | 6 | 0 | 6 | 42 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.AuthController | 101 | 5 | 106 | 660 | 95.2% | | 0 | 0 | | | 21 | 22 | 95.4% | | 21 | 22 | 95.4% | |
| ArturRios.Heimdall.WebApi.Controllers.GoogleUserController | 23 | 0 | 23 | 111 | 100% | | 0 | 0 | | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.HealthCheckController | 12 | 0 | 12 | 59 | 100% | | 2 | 4 | 50% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.PersonController | 92 | 0 | 92 | 383 | 100% | | 0 | 0 | | | 17 | 17 | 100% | | 17 | 17 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.ScopeController | 59 | 0 | 59 | 215 | 100% | | 0 | 0 | | | 12 | 12 | 100% | | 12 | 12 | 100% | |
| ArturRios.Heimdall.WebApi.Controllers.ScopePermissionController | 36 | 0 | 36 | 148 | 100% | | 0 | 0 | | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.WebApi.Documentation.LineEndingDocumentFilter | 42 | 2 | 44 | 356 | 95.4% | | 56 | 74 | 75.6% | | 4 | 4 | 100% | | 3 | 4 | 75% | |
| ArturRios.Heimdall.WebApi.Documentation.SecurityDocumentFilter | 65 | 0 | 65 | 356 | 100% | | 23 | 30 | 76.6% | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.WebApi.Documentation.SwaggerConfiguration | 46 | 5 | 51 | 356 | 90.1% | | 2 | 4 | 50% | | 1 | 1 | 100% | | 0 | 1 | 0% | |
| ArturRios.Heimdall.WebApi.Email.EmailDeliveryOptions | 15 | 0 | 15 | 57 | 100% | | 7 | 10 | 70% | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingEmailChangeNoticeSender | 3 | 0 | 3 | 20 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingEmailVerificationSender | 5 | 0 | 5 | 24 | 100% | | 1 | 2 | 50% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingPasswordResetSender | 5 | 0 | 5 | 23 | 100% | | 1 | 2 | 50% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingRegistrationAttemptSender | 5 | 0 | 5 | 22 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingRegistrationLinkSender | 5 | 0 | 5 | 24 | 100% | | 1 | 2 | 50% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingRestrictionLiftNotifier | 3 | 0 | 3 | 20 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.LoggingTwoFactorEmailSender | 3 | 0 | 3 | 21 | 100% | | 0 | 0 | | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.MailgunEmailChangeNoticeSender | 3 | 0 | 3 | 36 | 100% | | 0 | 0 | | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Email.MailgunEmailVerificationSender | 16 | 0 | 16 | 41 | 100% | | 4 | 4 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Email.MailgunPasswordResetSender | 20 | 0 | 20 | 47 | 100% | | 4 | 4 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Email.MailgunRegistrationAttemptSender | 0 | 13 | 13 | 35 | 0% | | 0 | 2 | 0% | | 0 | 3 | 0% | | 0 | 3 | 0% | |
| ArturRios.Heimdall.WebApi.Email.MailgunRegistrationLinkSender | 20 | 0 | 20 | 45 | 100% | | 4 | 4 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Email.MailgunRestrictionLiftNotifier | 0 | 15 | 15 | 54 | 0% | | 0 | 2 | 0% | | 0 | 2 | 0% | | 0 | 2 | 0% | |
| ArturRios.Heimdall.WebApi.Email.MailgunSender | 15 | 0 | 15 | 56 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Email.MailgunTwoFactorEmailSender | 0 | 9 | 9 | 30 | 0% | | 0 | 0 | | | 0 | 3 | 0% | | 0 | 3 | 0% | |
| ArturRios.Heimdall.WebApi.Email.PasswordRecoveryDispatcher | 16 | 1 | 17 | 58 | 94.1% | | 1 | 2 | 50% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.WebApi.Email.PasswordRecoveryQueue | 15 | 0 | 15 | 73 | 100% | | 2 | 2 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Email.RegistrationDispatcher | 13 | 4 | 17 | 44 | 76.4% | | 1 | 2 | 50% | | 3 | 3 | 100% | | 1 | 3 | 33.3% | |
| ArturRios.Heimdall.WebApi.Email.RegistrationQueue | 11 | 3 | 14 | 45 | 78.5% | | 1 | 2 | 50% | | 3 | 3 | 100% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.WebApi.Metrics.MetricsConfiguration | 20 | 0 | 20 | 89 | 100% | | 4 | 4 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Metrics.MetricsOptions | 13 | 0 | 13 | 97 | 100% | | 12 | 12 | 100% | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.WebApi.Monitoring.SecurityMonitoringService | 4 | 13 | 17 | 77 | 23.5% | | 0 | 12 | 0% | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.WebApi.Program | 3 | 0 | 3 | 11 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Retention.AuditRetentionService | 4 | 14 | 18 | 46 | 22.2% | | 0 | 8 | 0% | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.WebApi.Retention.IdentityAnonymisationService | 4 | 14 | 18 | 56 | 22.2% | | 0 | 4 | 0% | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.WebApi.Retention.ScheduledPassService | 12 | 10 | 22 | 93 | 54.5% | | 1 | 4 | 25% | | 3 | 4 | 75% | | 2 | 4 | 50% | |
| ArturRios.Heimdall.WebApi.Retention.TokenRetentionService | 3 | 17 | 20 | 47 | 15% | | 0 | 4 | 0% | | 2 | 3 | 66.6% | | 2 | 3 | 66.6% | |
| ArturRios.Heimdall.WebApi.Security.ActorExtensions | 4 | 0 | 4 | 25 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Security.ActorLivenessFilter | 35 | 0 | 35 | 179 | 100% | | 15 | 16 | 93.7% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Security.ApplicationTokenOptions | 33 | 0 | 33 | 111 | 100% | | 22 | 24 | 91.6% | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.WebApi.Security.AuthRateLimitPartition | 9 | 0 | 9 | 54 | 100% | | 13 | 14 | 92.8% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Security.GoogleIdTokenClaims | 8 | 0 | 8 | 78 | 100% | | 5 | 6 | 83.3% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Security.GoogleIdTokenValidationSettings | 8 | 0 | 8 | 48 | 100% | | 0 | 0 | | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Security.GoogleIdTokenVerifier | 0 | 18 | 18 | 58 | 0% | | 0 | 4 | 0% | | 0 | 2 | 0% | | 0 | 2 | 0% | |
| ArturRios.Heimdall.WebApi.Security.GoogleSignInOptions | 10 | 1 | 11 | 43 | 90.9% | | 2 | 4 | 50% | | 4 | 5 | 80% | | 4 | 5 | 80% | |
| ArturRios.Heimdall.WebApi.Security.HttpContextActorAccessor | 3 | 0 | 3 | 16 | 100% | | 6 | 8 | 75% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Security.HttpResponseRetryAfterAdvisor | 5 | 1 | 6 | 23 | 83.3% | | 3 | 6 | 50% | | 2 | 2 | 100% | | 1 | 2 | 50% | |
| ArturRios.Heimdall.WebApi.Security.IdentityUser | 13 | 0 | 13 | 76 | 100% | | 0 | 0 | | | 12 | 12 | 100% | | 12 | 12 | 100% | |
| ArturRios.Heimdall.WebApi.Security.IdentityUserMapper | 77 | 1 | 78 | 251 | 98.7% | | 53 | 56 | 94.6% | | 7 | 7 | 100% | | 6 | 7 | 85.7% | |
| ArturRios.Heimdall.WebApi.Security.JwtApplicationTokenService | 51 | 0 | 51 | 108 | 100% | | 18 | 20 | 90% | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.WebApi.Security.JwtAuthTokenIssuer | 42 | 0 | 42 | 104 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.WebApi.Security.JwtTwoFactorChallengeTokenIssuer | 30 | 1 | 31 | 125 | 96.7% | | 11 | 16 | 68.7% | | 4 | 4 | 100% | | 3 | 4 | 75% | |
| ArturRios.Heimdall.WebApi.Security.LocalGoogleIdTokenVerifier | 35 | 0 | 35 | 103 | 100% | | 13 | 14 | 92.8% | | 5 | 5 | 100% | | 5 | 5 | 100% | |
| ArturRios.Heimdall.WebApi.Security.MfaPendingGuardFilter | 7 | 0 | 7 | 49 | 100% | | 4 | 4 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Security.PasswordHashSaturationFilter | 6 | 1 | 7 | 60 | 85.7% | | 1 | 2 | 50% | | 1 | 1 | 100% | | 0 | 1 | 0% | |
| ArturRios.Heimdall.WebApi.Security.PersonTokenAudiences | 4 | 0 | 4 | 56 | 100% | | 0 | 0 | | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.WebApi.Security.PersonTokenValidator | 12 | 0 | 12 | 49 | 100% | | 4 | 4 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Security.PublicHostSettings | 31 | 0 | 31 | 251 | 100% | | 26 | 26 | 100% | | 8 | 8 | 100% | | 8 | 8 | 100% | |
| ArturRios.Heimdall.WebApi.Security.SensitiveDiagnostics | 6 | 0 | 6 | 251 | 100% | | 0 | 0 | | | 6 | 6 | 100% | | 6 | 6 | 100% | |
| ArturRios.Heimdall.WebApi.Security.SensitiveDiagnosticsGuard | 33 | 0 | 33 | 251 | 100% | | 29 | 30 | 96.6% | | 4 | 4 | 100% | | 4 | 4 | 100% | |
| ArturRios.Heimdall.WebApi.Security.SubjectRightsOnlyGuardFilter | 7 | 0 | 7 | 53 | 100% | | 6 | 6 | 100% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Security.SuppressedDeveloperPageFilter | 7 | 1 | 8 | 42 | 87.5% | | 0 | 0 | | | 1 | 1 | 100% | | 0 | 1 | 0% | |
| ArturRios.Heimdall.WebApi.Security.TokenLifetimeSetting | 7 | 0 | 7 | 34 | 100% | | 8 | 8 | 100% | | 2 | 2 | 100% | | 2 | 2 | 100% | |
| ArturRios.Heimdall.WebApi.Security.TokenOrigin | 14 | 0 | 14 | 59 | 100% | | 9 | 10 | 90% | | 1 | 1 | 100% | | 1 | 1 | 100% | |
| ArturRios.Heimdall.WebApi.Security.TokenSigningSecrets | 25 | 0 | 25 | 116 | 100% | | 12 | 12 | 100% | | 3 | 3 | 100% | | 3 | 3 | 100% | |
| ArturRios.Heimdall.WebApi.Security.TrustedCallerOptions | 24 | 0 | 24 | 109 | 100% | | 12 | 12 | 100% | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.WebApi.Security.TrustedProxyOptions | 25 | 0 | 25 | 115 | 100% | | 18 | 18 | 100% | | 7 | 7 | 100% | | 7 | 7 | 100% | |
| ArturRios.Heimdall.WebApi.Security.UnconfiguredGoogleIdTokenVerifier | 0 | 6 | 6 | 30 | 0% | | 0 | 0 | | | 0 | 2 | 0% | | 0 | 2 | 0% | |
| ArturRios.Heimdall.WebApi.Startup | 592 | 66 | 658 | 1509 | 89.9% | | 64 | 96 | 66.6% | | 28 | 28 | 100% | | 21 | 28 | 75% | |