22 lines
874 B
C#
22 lines
874 B
C#
using ROLAC.API.Entities.Logging;
|
|
using ROLAC.API.Services.Logging;
|
|
|
|
namespace ROLAC.API.Tests.TestSupport;
|
|
|
|
/// <summary>Records every audit Write so tests can assert on the emitted actions/summaries.</summary>
|
|
public sealed class CapturingAuditLogger : IAuditLogger
|
|
{
|
|
public readonly record struct Entry(string Action, string Category, string? EntityName, string? EntityId, string? Summary);
|
|
|
|
public readonly List<Entry> Entries = new();
|
|
|
|
public void Write(
|
|
string action, string category, LogLevelEnum level = LogLevelEnum.Information,
|
|
string? entityName = null, string? entityId = null, string? summary = null,
|
|
object? before = null, object? after = null,
|
|
string? userId = null, string? userEmail = null, string? ipAddress = null)
|
|
{
|
|
Entries.Add(new Entry(action, category, entityName, entityId, summary));
|
|
}
|
|
}
|