< Summary - Syki

Information
Class: Syki.Back.Extensions.UserExtensions
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Extensions/UserExtensions.cs
Tag: 56_26538939494
Line coverage
100%
Covered lines: 5
Uncovered lines: 0
Coverable lines: 5
Total lines: 17
Line coverage: 100%
Branch coverage
75%
Covered branches: 18
Total branches: 24
Branch coverage: 75%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_RoleId(...)75%44100%
get_Id(...)100%44100%
get_InstitutionId(...)50%44100%
get_IsAuthenticated(...)66.66%66100%
get_Permissions(...)83.33%66100%

File(s)

/home/runner/work/syki/syki/Back/Extensions/UserExtensions.cs

#LineLine coverage
 1using System.Text.Json;
 2using Syki.Back.Auth.Claims;
 3using System.Security.Claims;
 4
 5namespace Syki.Back.Extensions;
 6
 7public static class UserExtensions
 8{
 9    extension(ClaimsPrincipal user)
 10    {
 34611        public int RoleId => int.Parse(user.FindFirst(SykiClaims.UserRole)?.Value ?? "0");
 143412        public int Id => int.Parse(user.FindFirst(SykiClaims.UserId)?.Value ?? "0");
 34613        public int InstitutionId => int.Parse(user.FindFirst(SykiClaims.InstitutionId)?.Value ?? "0");
 104614        public bool IsAuthenticated => (user.Identity?.IsAuthenticated ?? false) && user.FindFirst(SykiClaims.UserId)?.V
 63815        public List<int> Permissions => JsonSerializer.Deserialize<List<int>>(user.FindFirst(SykiClaims.UserPermissions)
 16    }
 17}