< Summary - Syki

Information
Class: Syki.Back.Features.Academic.CreateEnrollmentPeriod.EnrollmentPeriod
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Features/Academic/CreateEnrollmentPeriod/EnrollmentPeriod.cs
Tag: 4_16869239191
Line coverage
100%
Covered lines: 29
Uncovered lines: 0
Coverable lines: 29
Total lines: 54
Line coverage: 100%
Branch coverage
100%
Covered branches: 4
Total branches: 4
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Id()100%11100%
get_InstitutionId()100%11100%
get_StartAt()100%11100%
get_EndAt()100%11100%
.ctor(...)100%11100%
New(...)100%22100%
Update(...)100%22100%
ToOut()100%11100%

File(s)

/home/runner/work/syki/syki/Back/Features/Academic/CreateEnrollmentPeriod/EnrollmentPeriod.cs

#LineLine coverage
 1namespace Syki.Back.Features.Academic.CreateEnrollmentPeriod;
 2
 3public class EnrollmentPeriod
 4{
 18825    public string Id { get; set; }
 5606    public Guid InstitutionId { get; set; }
 13967    public DateOnly StartAt { get; set; }
 18788    public DateOnly EndAt { get; set; }
 9
 55610    public EnrollmentPeriod(
 55611        string id,
 55612        Guid institutionId,
 55613        DateOnly startAt,
 55614        DateOnly endAt
 55615    ) {
 55616        Id = id;
 55617        InstitutionId = institutionId;
 55618        StartAt = startAt;
 55619        EndAt = endAt;
 55620    }
 21
 22    public static OneOf<EnrollmentPeriod, SykiError> New(
 23        string id,
 24        Guid institutionId,
 25        DateOnly startAt,
 26        DateOnly endAt
 27    ) {
 14828        if (startAt >= endAt)
 1229            return new InvalidEnrollmentPeriodDates();
 30
 13631        return new EnrollmentPeriod(id, institutionId, startAt, endAt);
 32    }
 33
 34    public OneOf<SykiSuccess, SykiError> Update(DateOnly startAt, DateOnly endAt)
 35    {
 9636        if (startAt >= endAt)
 437            return new InvalidEnrollmentPeriodDates();
 38
 9239        StartAt = startAt;
 9240        EndAt = endAt;
 41
 9242        return new SykiSuccess();
 43    }
 44
 45    public EnrollmentPeriodOut ToOut()
 46    {
 23247        return new()
 23248        {
 23249            Id = Id,
 23250            StartAt = StartAt,
 23251            EndAt = EndAt,
 23252        };
 53    }
 54}