< Summary - Heimdall API

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

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Id()100%11100%
get_Name()100%11100%
get_Description()100%11100%
get_GoogleSignInEnabled()100%11100%
get_EmailVerificationUrl()100%11100%
get_PasswordResetUrl()100%11100%
get_OwnerIds()100%11100%
get_CreatedAt()100%11100%
get_UpdatedAt()100%11100%

File(s)

/home/runner/work/heimdall-api/heimdall-api/src/Application/ArturRios.Heimdall.Command/Output/SetGoogleSignInCommandOutput.cs

#LineLine coverage
 1using ArturRios.Mediator.Command;
 2
 3namespace ArturRios.Heimdall.Command.Output;
 4
 5/// <summary>
 6///     The scope as updated by <see cref="Input.SetGoogleSignInCommand" /> (UC-24) — step 5 of the
 7///     main flow returns the scope, not just the flag. Only externally-facing <c>PublicId</c>
 8///     identifiers are exposed; internal Ids never leave the data layer. <c>IsDeleted</c> is absent:
 9///     the handler only ever answers for a non-deleted scope (AF-24a), so it would be <c>false</c> on
 10///     every response by construction.
 11/// </summary>
 12public class SetGoogleSignInCommandOutput : CommandOutput
 13{
 14    /// <summary>Public identifier of the scope.</summary>
 2415    public Guid Id { get; set; }
 16
 17    /// <summary>Scope display name.</summary>
 3318    public string Name { get; set; } = string.Empty;
 19
 20    /// <summary>Scope description, if any.</summary>
 1921    public string? Description { get; set; }
 22
 23    /// <summary>Whether Google sign-in is enabled for the scope, as just set.</summary>
 2424    public bool GoogleSignInEnabled { get; set; }
 25
 26    /// <summary>Base link for this scope's verification emails, or <c>null</c> to use the global one.</summary>
 1827    public string? EmailVerificationUrl { get; set; }
 28
 29    /// <summary>Base link for this scope's password-reset emails, or <c>null</c> to use the global one.</summary>
 1830    public string? PasswordResetUrl { get; set; }
 31
 32    /// <summary>Public identifiers of the scope's owners.</summary>
 3433    public IEnumerable<Guid> OwnerIds { get; set; } = new List<Guid>();
 34
 35    /// <summary>Creation timestamp.</summary>
 1936    public DateTime CreatedAt { get; set; }
 37
 38    /// <summary>Last update timestamp.</summary>
 1939    public DateTime UpdatedAt { get; set; }
 40}