< Summary

Information
Class: Chronicis.Client.Services.AdminApiService
Assembly: Chronicis.Client
File(s): /home/runner/work/chronicis/chronicis/src/Chronicis.Client/Services/AdminApiService.cs
Line coverage
100%
Covered lines: 14
Uncovered lines: 0
Coverable lines: 14
Total lines: 41
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%
GetWorldSummariesAsync()100%11100%
DeleteWorldAsync(...)100%11100%
GetTutorialMappingsAsync()100%11100%
CreateTutorialMappingAsync(...)100%11100%

File(s)

/home/runner/work/chronicis/chronicis/src/Chronicis.Client/Services/AdminApiService.cs

#LineLine coverage
 1using Chronicis.Shared.DTOs;
 2
 3namespace Chronicis.Client.Services;
 4
 5/// <summary>
 6/// HTTP client wrapper for the Admin API endpoints.
 7/// </summary>
 8public class AdminApiService : IAdminApiService
 9{
 10    private readonly HttpClient _http;
 11    private readonly ILogger<AdminApiService> _logger;
 12
 13    public AdminApiService(HttpClient http, ILogger<AdminApiService> logger)
 14    {
 1115        _http = http;
 1116        _logger = logger;
 1117    }
 18
 19    /// <inheritdoc/>
 20    public Task<List<AdminWorldSummaryDto>> GetWorldSummariesAsync()
 421        => _http.GetListAsync<AdminWorldSummaryDto>("admin/worlds", _logger, "AdminWorldSummary");
 22
 23    /// <inheritdoc/>
 24    public Task<bool> DeleteWorldAsync(Guid worldId)
 425        => _http.DeleteEntityAsync($"admin/worlds/{worldId}", _logger, "World");
 26
 27    /// <inheritdoc/>
 28    public Task<List<TutorialMappingDto>> GetTutorialMappingsAsync()
 129        => _http.GetListAsync<TutorialMappingDto>(
 130            "sysadmin/tutorials",
 131            _logger,
 132            "tutorial mappings");
 33
 34    /// <inheritdoc/>
 35    public Task<TutorialMappingDto?> CreateTutorialMappingAsync(TutorialMappingCreateDto dto)
 136        => _http.PostEntityAsync<TutorialMappingDto>(
 137            "sysadmin/tutorials",
 138            dto,
 139            _logger,
 140            "tutorial mapping");
 41}