< Summary

Information
Class: ProjectTemplate.Infrastructure.Data.Auditing.AuditStorageModes
Assembly: ProjectTemplate.Infrastructure
File(s): /home/runner/work/NetCoreApplicationTemplate/NetCoreApplicationTemplate/src/ProjectTemplate.Infrastructure/Data/Auditing/AuditStorageModes.cs
Line coverage
100%
Covered lines: 6
Uncovered lines: 0
Coverable lines: 6
Total lines: 50
Line coverage: 100%
Branch coverage
75%
Covered branches: 6
Total branches: 8
Branch coverage: 75%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
IsSupported(...)100%44100%
IsLocal(...)100%11100%
Normalize(...)50%44100%

File(s)

/home/runner/work/NetCoreApplicationTemplate/NetCoreApplicationTemplate/src/ProjectTemplate.Infrastructure/Data/Auditing/AuditStorageModes.cs

#LineLine coverage
 1namespace ProjectTemplate.Infrastructure.Data.Auditing;
 2
 3/// <summary>
 4/// Defines supported audit storage mode names for application data access.
 5/// </summary>
 6public static class AuditStorageModes
 7{
 8    /// <summary>
 9    /// Stores audit records in the application database through the local EF Core audit record table.
 10    /// </summary>
 11    public const string Local = "Local";
 12
 13    /// <summary>
 14    /// Indicates that a consuming application intends to route audit records through an outbox-style store.
 15    /// </summary>
 16    public const string Outbox = "Outbox";
 17
 18    /// <summary>
 19    /// Indicates that a consuming application intends to route audit records through a custom external sink.
 20    /// </summary>
 21    public const string ExternalSink = "ExternalSink";
 22
 23    /// <summary>
 24    /// Determines whether the supplied storage mode is one of the supported mode names.
 25    /// </summary>
 26    public static bool IsSupported(string? storageMode)
 27    {
 49428        string normalizedStorageMode = Normalize(storageMode);
 29
 49430        return normalizedStorageMode.Equals(Local, StringComparison.OrdinalIgnoreCase)
 49431            || normalizedStorageMode.Equals(Outbox, StringComparison.OrdinalIgnoreCase)
 49432            || normalizedStorageMode.Equals(ExternalSink, StringComparison.OrdinalIgnoreCase);
 33    }
 34
 35    /// <summary>
 36    /// Determines whether the supplied storage mode uses the default local audit record table.
 37    /// </summary>
 38    public static bool IsLocal(string? storageMode)
 39    {
 25040        return Normalize(storageMode).Equals(Local, StringComparison.OrdinalIgnoreCase);
 41    }
 42
 43    /// <summary>
 44    /// Normalizes a configured storage mode value for comparison and logging.
 45    /// </summary>
 46    public static string Normalize(string? storageMode)
 47    {
 95648        return storageMode?.Trim() ?? string.Empty;
 49    }
 50}