< Summary

Information
Class: Services.PartnerServices.PartnerListItemDto
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/PartnerServices/PartnerDtos.cs
Line coverage
90%
Covered lines: 9
Uncovered lines: 1
Coverable lines: 10
Total lines: 71
Line coverage: 90%
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%
get_Id()100%11100%
get_Name()100%11100%
get_Login()100%210%
get_Email()100%11100%
get_GoogleEmail()100%11100%
get_IsActive()100%11100%
get_LastLoginAtUtc()100%11100%
get_RulesCount()100%11100%
get_Permissions()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/PartnerServices/PartnerDtos.cs

#LineLine coverage
 1using OzonDomains.Models.Partners;
 2
 3namespace Services.PartnerServices;
 4
 25public sealed record PartnerListItemDto(
 26    long Id,
 27    string Name,
 08    string Login,
 29    string? Email,
 210    string? GoogleEmail,
 211    bool IsActive,
 212    DateTime? LastLoginAtUtc,
 213    int RulesCount,
 1014    IReadOnlyList<PartnerPermissionCode> Permissions);
 15
 16public sealed record PartnerDetailsDto(
 17    long Id,
 18    string Name,
 19    string Login,
 20    string? Email,
 21    string? GoogleEmail,
 22    bool IsActive,
 23    DateTime CreatedAtUtc,
 24    DateTime? LastLoginAtUtc,
 25    PartnerNotificationChannels NotificationChannels,
 26    string? NotificationEmail,
 27    string? TelegramChatId,
 28    IReadOnlyList<PartnerPermissionCode> Permissions,
 29    IReadOnlyList<PartnerRuleDto> Rules);
 30
 31public sealed record PartnerRuleDto(
 32    long? Id,
 33    string Name,
 34    bool IsActive,
 35    IReadOnlyList<PartnerRuleConditionDto> Conditions);
 36
 37public sealed record PartnerRuleConditionDto(
 38    PartnerRuleField Field,
 39    IReadOnlyList<string> Values);
 40
 41public sealed record CreatePartnerRequest(
 42    string Name,
 43    string Email,
 44    string? GoogleEmail);
 45
 46public sealed record UpdatePartnerRequest(
 47    string Name,
 48    string? Email,
 49    string? GoogleEmail,
 50    bool IsActive,
 51    PartnerNotificationChannels NotificationChannels,
 52    string? NotificationEmail,
 53    string? TelegramChatId);
 54
 55/// <summary>Результат операции управления: либо значение, либо понятная ошибка для владельца.</summary>
 56public sealed record PartnerOpResult<T>(T? Value, string? Error)
 57{
 58    public bool Ok => Error is null;
 59
 60    public static PartnerOpResult<T> Success(T value) => new(value, null);
 61
 62    public static PartnerOpResult<T> Fail(string error) => new(default, error);
 63}
 64
 65public sealed record PartnerAuditQuery(
 66    long? PartnerId,
 67    string? Action,
 68    DateTime? FromUtc,
 69    DateTime? ToUtc,
 70    int Skip,
 71    int Take);