< Summary - Syki

Information
Class: Syki.Back.Configs.AuditConfigs
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Configs/AuditConfigs.cs
Tag: 97_27801654829
Line coverage
100%
Covered lines: 20
Uncovered lines: 0
Coverable lines: 20
Total lines: 34
Line coverage: 100%
Branch coverage
50%
Covered branches: 1
Total branches: 2
Branch coverage: 50%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
AddAuditConfigs(...)50%22100%

File(s)

/home/runner/work/syki/syki/Back/Configs/AuditConfigs.cs

#LineLine coverage
 1using Audit.Core;
 2using Syki.Back.Audit;
 3using Audit.EntityFramework;
 4using Syki.Back.Domain.Identity;
 5using AuditConfig = Audit.Core.Configuration;
 6
 7namespace Syki.Back.Configs;
 8
 9public static class AuditConfigs
 10{
 11    public static void AddAuditConfigs(this WebApplicationBuilder _)
 12    {
 413        AuditConfig.Setup().UseEntityFramework(_ => _
 214            .AuditTypeExplicitMapper(_ => _
 215                .Map<SykiUser, AuditTrail>()
 216                .Map<MagicLink, AuditTrail>()
 217                .AuditEntityAction<AuditTrail>((evt, entry, trail) =>
 218                {
 153019                    if (evt.Environment.Exception != null) return false;
 153020                    return trail.Fill(evt, entry);
 221                }))
 422            .IgnoreMatchedProperties(true));
 23
 224        AuditConfig.AddCustomAction(ActionType.OnScopeCreated, scope =>
 225        {
 265426            var dbContext = scope.GetEntityFrameworkEvent().GetDbContext() as SykiDbContext;
 227
 265428            scope.SetUserId(dbContext.RequestUser.Id);
 265429            scope.SetInstitutionId(dbContext.RequestUser.InstitutionId);
 265430            scope.SetActivityId(dbContext.ActivityId);
 265431            scope.SetOperation(dbContext.Operation);
 265632        });
 233    }
 34}