< Summary

Information
Class: ProjectTemplate.Infrastructure.Data.Configurations.ApplicationAuditReconciliationFindingConfiguration
Assembly: ProjectTemplate.Infrastructure
File(s): /home/runner/work/NetCoreApplicationTemplate/NetCoreApplicationTemplate/src/ProjectTemplate.Infrastructure/Data/Configurations/ApplicationAuditReconciliationFindingConfiguration.cs
Line coverage
100%
Covered lines: 15
Uncovered lines: 0
Coverable lines: 15
Total lines: 44
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
Configure(...)100%11100%

File(s)

/home/runner/work/NetCoreApplicationTemplate/NetCoreApplicationTemplate/src/ProjectTemplate.Infrastructure/Data/Configurations/ApplicationAuditReconciliationFindingConfiguration.cs

#LineLine coverage
 1using Microsoft.EntityFrameworkCore;
 2using Microsoft.EntityFrameworkCore.Metadata.Builders;
 3using ProjectTemplate.Infrastructure.Data.Entities;
 4
 5namespace ProjectTemplate.Infrastructure.Data.Configurations;
 6
 7public sealed class ApplicationAuditReconciliationFindingConfiguration
 8    : IEntityTypeConfiguration<ApplicationAuditReconciliationFinding>
 9{
 10    public void Configure(EntityTypeBuilder<ApplicationAuditReconciliationFinding> builder)
 11    {
 812        builder.ToTable("ApplicationAuditReconciliationFindings");
 813        builder.HasKey(finding => finding.Id);
 814        builder.Property(finding => finding.Id).ValueGeneratedNever();
 815        builder.Property(finding => finding.SchemaVersion).HasMaxLength(32).IsRequired();
 816        builder.Property(finding => finding.FindingKey).HasMaxLength(128).IsRequired();
 817        builder.Property(finding => finding.ReasonCode).HasMaxLength(64).IsRequired();
 818        builder.Property(finding => finding.Severity).HasMaxLength(32).IsRequired();
 819        builder.Property(finding => finding.MutationBatchId).HasMaxLength(64).IsRequired();
 820        builder.Property(finding => finding.Destination).HasMaxLength(128);
 821        builder.Property(finding => finding.Guidance).HasMaxLength(512).IsRequired();
 822        builder.Property(finding => finding.RemediationStatus).HasMaxLength(32).IsRequired();
 823        builder.HasIndex(finding => finding.FindingKey).IsUnique();
 824        builder.HasIndex(finding => new { finding.RemediationStatus, finding.Severity });
 825        builder.HasIndex(finding => new { finding.MutationBatchId, finding.ReasonCode });
 826    }
 27}
 28
 29public sealed class ApplicationAuditReconciliationRemediationConfiguration
 30    : IEntityTypeConfiguration<ApplicationAuditReconciliationRemediation>
 31{
 32    public void Configure(EntityTypeBuilder<ApplicationAuditReconciliationRemediation> builder)
 33    {
 34        builder.ToTable("ApplicationAuditReconciliationRemediations");
 35        builder.HasKey(remediation => remediation.Id);
 36        builder.Property(remediation => remediation.Id).ValueGeneratedNever();
 37        builder.Property(remediation => remediation.MutationBatchId).HasMaxLength(64).IsRequired();
 38        builder.Property(remediation => remediation.ActionCode).HasMaxLength(64).IsRequired();
 39        builder.Property(remediation => remediation.ActorId).HasMaxLength(256).IsRequired();
 40        builder.Property(remediation => remediation.EvidenceReference).HasMaxLength(256);
 41        builder.HasIndex(remediation => remediation.FindingId);
 42        builder.HasIndex(remediation => remediation.MutationBatchId);
 43    }
 44}