< Summary

Information
Class: Elsa.ExternalAuthentication.Options.ExternalAuthenticationExtensionRegistration
Assembly: Elsa.ExternalAuthentication
File(s): /home/runner/work/elsa-core/elsa-core/src/modules/Elsa.ExternalAuthentication/Options/ExternalAuthenticationExtensionOptions.cs
Line coverage
100%
Covered lines: 3
Uncovered lines: 0
Coverable lines: 3
Total lines: 32
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
.ctor(...)100%11100%
get_Kind()100%11100%
get_Type()100%11100%

File(s)

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.ExternalAuthentication/Options/ExternalAuthenticationExtensionOptions.cs

#LineLine coverage
 1namespace Elsa.ExternalAuthentication.Options;
 2
 3/// <summary>
 4/// Identifies a deployment-installed External Authentication extension without
 5/// requiring its runtime service to be instantiated during options validation.
 6/// </summary>
 987public sealed record ExternalAuthenticationExtensionRegistration(
 3928    ExternalAuthenticationExtensionKind Kind,
 1969    string Type);
 10
 11/// <summary>Identifies the extension registry populated by a deployment registration.</summary>
 12public enum ExternalAuthenticationExtensionKind
 13{
 14    /// <summary>A provider protocol adapter.</summary>
 15    Adapter,
 16    /// <summary>An unlinked external identity admission policy.</summary>
 17    UnlinkedIdentityPolicy,
 18    /// <summary>An Elsa permission grant source.</summary>
 19    PermissionGrantSource
 20    ,
 21    /// <summary>A trusted deployed external-to-Elsa user matcher.</summary>
 22    ExternalUserMatcher
 23}
 24
 25/// <summary>
 26/// Contains the deployment-installed External Authentication extension catalog.
 27/// </summary>
 28public sealed class ExternalAuthenticationExtensionOptions
 29{
 30    /// <summary>Startup-installed extensions used for duplicate and allowlist validation.</summary>
 31    public ICollection<ExternalAuthenticationExtensionRegistration> Registrations { get; } = [];
 32}