< Summary - Syki

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

#LineLine coverage
 1namespace Syki.Back.Features.Academic.CreateAcademicPeriod;
 2
 3[ApiController, AuthAcademic]
 4[EnableRateLimiting("Medium")]
 5825public class CreateAcademicPeriodController(CreateAcademicPeriodService service) : ControllerBase
 6{
 7    /// <summary>
 8    /// Criar período acadêmico
 9    /// </summary>
 10    /// <remarks>
 11    /// Cria um novo período acadêmico.
 12    /// </remarks>
 13    [HttpPost("academic/academic-periods")]
 14    [SwaggerResponseExample(200, typeof(ResponseExamples))]
 15    [SwaggerResponseExample(400, typeof(ErrorsExamples))]
 16    public async Task<IActionResult> Create([FromBody] CreateAcademicPeriodIn data)
 17    {
 58218        var result = await service.Create(User.InstitutionId, data);
 58219        return result.Match<IActionResult>(Ok, BadRequest);
 58220    }
 21}
 22
 23internal class RequestExamples : ExamplesProvider<CreateAcademicPeriodIn> { }
 24
 25internal class ResponseExamples : ExamplesProvider<AcademicPeriodOut> { }
 26
 27internal class ErrorsExamples : ErrorExamplesProvider<
 28    InvalidAcademicPeriod,
 29    InvalidAcademicPeriodDates,
 30    AcademicPeriodAlreadyExists,
 31    InvalidAcademicPeriodEndDate,
 32    InvalidAcademicPeriodStartDate>
 33{ }