< Summary - Heimdall API

Information
Class: ArturRios.Heimdall.Command.Input.SetScopeEmailLinksCommand
Assembly: ArturRios.Heimdall.Command
File(s): /home/runner/work/heimdall-api/heimdall-api/src/Application/ArturRios.Heimdall.Command/Input/SetScopeEmailLinksCommand.cs
Line coverage
100%
Covered lines: 5
Uncovered lines: 0
Coverable lines: 5
Total lines: 35
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage
100%
Covered methods: 5
Fully covered methods: 5
Total methods: 5
Method coverage: 100%
Full method coverage: 100%

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Id()100%11100%
get_EmailVerificationUrl()100%11100%
get_PasswordResetUrl()100%11100%
get_ActingPersonId()100%11100%
get_ActingRole()100%11100%

File(s)

/home/runner/work/heimdall-api/heimdall-api/src/Application/ArturRios.Heimdall.Command/Input/SetScopeEmailLinksCommand.cs

#LineLine coverage
 1using System.Text.Json.Serialization;
 2using ArturRios.Heimdall.Shared.Security;
 3using ArturRios.Mediator.Command;
 4
 5namespace ArturRios.Heimdall.Command.Input;
 6
 7/// <summary>
 8///     Intent to set the base links a scope's verification and password-reset emails point at. Shaped
 9///     like <see cref="SetSelfRegistrationCommand" />: the scope comes from the route and the actor
 10///     from the token.
 11/// </summary>
 12/// <remarks>
 13///     This is its own command, not two more fields of <see cref="UpdateScopeCommand" />, because that
 14///     command replaces every field: a client that predates these links and does not send them would
 15///     erase them on its next update. Here the body is the whole state of the two links, so each one a
 16///     request omits, sends as <c>null</c> or leaves empty is cleared, and the global setting applies
 17///     to that email again.
 18/// </remarks>
 19public class SetScopeEmailLinksCommand : BaseCommand, IActorScoped
 20{
 21    [JsonIgnore]
 3722    public Guid Id { get; set; }
 23
 24    /// <summary>Base link for the scope's verification emails, or <c>null</c>/empty to clear it.</summary>
 7725    public string? EmailVerificationUrl { get; set; }
 26
 27    /// <summary>Base link for the scope's password-reset emails, or <c>null</c>/empty to clear it.</summary>
 7728    public string? PasswordResetUrl { get; set; }
 29
 30    [JsonIgnore]
 2531    public Guid ActingPersonId { get; set; }
 32
 33    [JsonIgnore]
 2634    public int ActingRole { get; set; }
 35}