< Summary - Syki

Information
Class: Syki.Back.Features.Academic.CreateDiscipline.CreateDisciplineService
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Features/Academic/CreateDiscipline/CreateDisciplineService.cs
Tag: 4_16869239191
Line coverage
100%
Covered lines: 11
Uncovered lines: 0
Coverable lines: 11
Total lines: 21
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
.ctor(...)100%11100%
Create()100%11100%

File(s)

/home/runner/work/syki/syki/Back/Features/Academic/CreateDiscipline/CreateDisciplineService.cs

#LineLine coverage
 1namespace Syki.Back.Features.Academic.CreateDiscipline;
 2
 463public class CreateDisciplineService(SykiDbContext ctx) : IAcademicService
 4{
 5    public async Task<DisciplineOut> Create(Guid institutionId, CreateDisciplineIn data)
 6    {
 467        var discipline = new Discipline(institutionId, data.Name);
 8
 469        var courses = await ctx.Courses
 4610            .Where(c => c.InstitutionId == institutionId && data.Courses.Contains(c.Id))
 4611            .Select(c => c.Id)
 4612            .ToListAsync();
 13
 5214        courses.ForEach(id => discipline.Links.Add(new() { CourseId = id }));
 15
 4616        ctx.Add(discipline);
 4617        await ctx.SaveChangesAsync();
 18
 4619        return discipline.ToOut();
 4620    }
 21}