< Summary - Syki

Information
Class: Syki.Back.Features.Adm.SetupFeatureFlags.SetupFeatureFlagsService
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Features/Adm/SetupFeatureFlags/SetupFeatureFlagsService.cs
Tag: 4_16869239191
Line coverage
100%
Covered lines: 11
Uncovered lines: 0
Coverable lines: 11
Total lines: 25
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
.ctor(...)100%11100%
Setup()100%44100%

File(s)

/home/runner/work/syki/syki/Back/Features/Adm/SetupFeatureFlags/SetupFeatureFlagsService.cs

#LineLine coverage
 1namespace Syki.Back.Features.Adm.SetupFeatureFlags;
 2
 43public class SetupFeatureFlagsService(SykiDbContext ctx, FeaturesSettings settings) : IAdmService
 4{
 5    public async Task Setup(SetupFeatureFlagsIn data)
 6    {
 47        var features = await ctx.FeatureFlags
 48            .Where(f => f.Id == Guid.Empty)
 49            .FirstOrDefaultAsync();
 10
 411        if (features == null)
 12        {
 213            features ??= new(data);
 214            ctx.Add(features);
 15        }
 16        else
 17        {
 218            features.CrossLogin = data.CrossLogin;
 19        }
 20
 421        await ctx.SaveChangesAsync();
 22
 423        settings.CrossLogin = features.CrossLogin;
 424    }
 25}