< Summary

Information
Class: Chronicis.Api.Services.ExternalLinks.RaceCategoryStrategy
Assembly: Chronicis.Api
File(s): /home/runner/work/chronicis/chronicis/src/Chronicis.Api/Services/ExternalLinks/RaceCategoryStrategy.cs
Line coverage
100%
Covered lines: 23
Uncovered lines: 0
Coverable lines: 23
Total lines: 46
Line coverage: 100%
Branch coverage
100%
Covered branches: 8
Total branches: 8
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_CategoryKey()100%11100%
get_Endpoint()100%11100%
get_DisplayName()100%11100%
get_Icon()100%11100%
BuildMarkdown(...)100%88100%

File(s)

/home/runner/work/chronicis/chronicis/src/Chronicis.Api/Services/ExternalLinks/RaceCategoryStrategy.cs

#LineLine coverage
 1using System.Text;
 2using System.Text.Json;
 3using static Chronicis.Api.Services.ExternalLinks.Open5eJsonHelpers;
 4
 5namespace Chronicis.Api.Services.ExternalLinks;
 6
 7public sealed class RaceCategoryStrategy : Open5eCategoryStrategyBase
 8{
 99    public override string CategoryKey => "races";
 210    public override string Endpoint => "races";
 411    public override string DisplayName => "Race";
 212    public override string? Icon => "👤";
 13
 14    public override string BuildMarkdown(JsonElement root, string title)
 15    {
 516        var sb = new StringBuilder();
 517        sb.AppendLine($"# {title}");
 518        sb.AppendLine();
 19
 520        var size = GetString(root, "size");
 521        var speed = GetString(root, "speed");
 22
 523        if (!string.IsNullOrEmpty(size))
 224            sb.AppendLine($"**Size:** {size}");
 525        if (!string.IsNullOrEmpty(speed))
 226            sb.AppendLine($"**Speed:** {speed}");
 27
 528        sb.AppendLine();
 29
 530        var desc = GetString(root, "desc");
 531        if (!string.IsNullOrEmpty(desc))
 32        {
 433            sb.AppendLine(desc);
 434            sb.AppendLine();
 35        }
 36
 537        var traits = GetString(root, "traits");
 538        if (!string.IsNullOrEmpty(traits))
 39        {
 140            sb.AppendLine("## Traits");
 141            sb.AppendLine(traits);
 42        }
 43
 544        return sb.ToString().Trim();
 45    }
 46}