< Summary - Syki

Information
Class: Syki.Back.Extensions.FluentValidationExtensions
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Extensions/FluentValidationExtensions.cs
Tag: 56_26538939494
Line coverage
100%
Covered lines: 10
Uncovered lines: 0
Coverable lines: 10
Total lines: 32
Line coverage: 100%
Branch coverage
100%
Covered branches: 2
Total branches: 2
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
Run(...)100%22100%
WithError(...)100%11100%

File(s)

/home/runner/work/syki/syki/Back/Extensions/FluentValidationExtensions.cs

#LineLine coverage
 1namespace Syki.Back.Extensions;
 2
 3public static class FluentValidationExtensions
 4{
 5    extension<T>(AbstractValidator<T> validator)
 6    {
 7        public bool Run(T data, out SykiError error)
 8        {
 6829            var result = validator.Validate(data);
 10
 68211            if (result.IsValid)
 12            {
 62413                error = default!;
 62414                return false;
 15            }
 16
 5817            error = (result.Errors.First().CustomState as SykiError)!;
 5818            return true;
 19        }
 20    }
 21
 22    extension<T, TProperty>(IRuleBuilderOptions<T, TProperty> ruleBuilder)
 23    {
 24        public IRuleBuilderOptions<T, TProperty> WithError(SykiError error)
 25        {
 6826            return ruleBuilder
 6827                .WithErrorCode(error.Code)
 6828                .WithMessage(error.Message)
 12629                .WithState(_ => error);
 30        }
 31    }
 32}