< Summary - Estud

Information
Class: Estud.Back.Domain.Identity.MagicLink
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Domain/Identity/MagicLink.cs
Tag: 114_29044117136
Line coverage
100%
Covered lines: 17
Uncovered lines: 0
Coverable lines: 17
Total lines: 30
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Id()100%11100%
get_UserId()100%11100%
get_CreatedAt()100%11100%
get_ExpiresAt()100%11100%
get_UsedAt()100%11100%
get_User()100%11100%
.ctor()100%11100%
.ctor(...)100%11100%
IsUsed()100%11100%
IsExpired()100%11100%
Use()100%11100%

File(s)

/home/runner/work/syki/syki/Back/Domain/Identity/MagicLink.cs

#LineLine coverage
 1namespace Estud.Back.Domain.Identity;
 2
 3public class MagicLink
 4{
 16425    public Guid Id { get; set; }
 8366    public int UserId { get; set; }
 8887    public DateTime CreatedAt { get; set; }
 17288    public DateTime ExpiresAt { get; set; }
 16769    public DateTime? UsedAt { get; set; }
 10
 88811    public EstudUser? User { get; set; }
 12
 168413    public MagicLink() {}
 14
 88815    public MagicLink(EstudUser user)
 16    {
 88817        Id = Guid.NewGuid();
 88818        User = user;
 88819        CreatedAt = DateTime.UtcNow;
 88820        ExpiresAt = DateTime.UtcNow.Add(TimeSpan.FromHours(24));
 88821    }
 22
 84023    public bool IsUsed() => UsedAt != null;
 83824    public bool IsExpired() => DateTime.UtcNow > ExpiresAt;
 25
 26    public void Use()
 27    {
 83628        UsedAt = DateTime.UtcNow;
 83629    }
 30}