< Summary - Syki

Information
Class: Syki.Back.Features.Student.CreateClassActivityWork.ClassActivityWork
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Features/Student/CreateClassActivityWork/ClassActivityWork.cs
Tag: 4_16869239191
Line coverage
100%
Covered lines: 35
Uncovered lines: 0
Coverable lines: 35
Total lines: 61
Line coverage: 100%
Branch coverage
66%
Covered branches: 4
Total branches: 6
Branch coverage: 66.6%
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_ClassActivityId()100%11100%
get_SykiStudentId()100%11100%
get_SykiStudent()100%11100%
get_Link()100%11100%
get_Note()100%11100%
get_Status()100%11100%
.ctor()100%11100%
.ctor(...)100%11100%
AddLink(...)100%11100%
AddNote(...)50%44100%
ToOut()100%22100%

File(s)

/home/runner/work/syki/syki/Back/Features/Student/CreateClassActivityWork/ClassActivityWork.cs

#LineLine coverage
 1using Syki.Back.Features.Academic.CreateStudent;
 2
 3namespace Syki.Back.Features.Student.CreateClassActivityWork;
 4
 5/// <summary>
 6/// Entrega de uma atividade feita por um aluno
 7/// </summary>
 8public class ClassActivityWork : Entity
 9{
 8210    public Guid Id { get; set; }
 38411    public Guid ClassActivityId { get; set; }
 13212    public Guid SykiStudentId { get; set; }
 1613    public SykiStudent SykiStudent { get; set; }
 2014    public string? Link { get; set; }
 18015    public decimal Note { get; set; }
 14416    public ClassActivityWorkStatus Status { get; set; }
 17
 20818    private ClassActivityWork() { }
 19
 7020    public ClassActivityWork(
 7021        Guid classActivityId,
 7022        Guid studentId
 7023    ) {
 7024        Id = Guid.CreateVersion7();
 7025        ClassActivityId = classActivityId;
 7026        SykiStudentId = studentId;
 7027        Note = 0;
 7028        Status = ClassActivityWorkStatus.Pending;
 7029    }
 30
 31    public void AddLink(string link)
 32    {
 833        Link = link;
 834        Status = ClassActivityWorkStatus.Delivered;
 835    }
 36
 37    public OneOf<SykiSuccess, SykiError> AddNote(decimal note)
 38    {
 4439        if (note < 0 || note > 10) return new InvalidStudentClassNote();
 40
 4441        Note = note;
 4442        Status = ClassActivityWorkStatus.Finalized;
 43
 4444        AddDomainEvent(new StudentClassNoteAddedDomainEvent(SykiStudentId, ClassActivityId));
 45
 4446        return new SykiSuccess();
 47    }
 48
 49    public ClassActivityWorkOut ToOut()
 50    {
 1251        return new()
 1252        {
 1253            Id = Id,
 1254            StudentId = SykiStudentId,
 1255            StudentName = SykiStudent != null ? SykiStudent.Name : "",
 1256            Status = Status,
 1257            Note = Note,
 1258            Link = Link,
 1259        };
 60    }
 61}