< Summary

Information
Class: OzonDomains.Models.ForumAutoCartItem
Assembly: OzonDomains
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/ForumAutoCartItem.cs
Line coverage
95%
Covered lines: 19
Uncovered lines: 1
Coverable lines: 20
Total lines: 42
Line coverage: 95%
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
get_Id()100%11100%
get_ProviderKey()100%11100%
get_StudioOrderId()100%11100%
get_ActiveStudioOrderId()100%11100%
get_StudioOrder()100%11100%
get_Tid()100%11100%
get_Article()100%11100%
get_Brand()100%11100%
get_ProductName()100%11100%
get_Quantity()100%11100%
get_SourcePrice()100%11100%
get_CurrencyCode()100%11100%
get_DeliveryAtUtc()100%11100%
get_Status()100%11100%
get_TestResultJson()100%210%
get_LastError()100%11100%
get_TestedAtUtc()100%11100%
get_CreatedBy()100%11100%
get_CreatedAtUtc()100%11100%
get_UpdatedAtUtc()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/ForumAutoCartItem.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3
 4namespace OzonDomains.Models;
 5
 6[Table("ForumAutoCartItems")]
 7public sealed class ForumAutoCartItem
 8{
 179    public long Id { get; set; }
 2510    [Required, MaxLength(20)] public string ProviderKey { get; set; } = string.Empty;
 1911    public int StudioOrderId { get; set; }
 12    /// <summary>Заполняется, пока строка может участвовать в корзине; уникальный индекс защищает от дубля.</summary>
 1513    public int? ActiveStudioOrderId { get; set; }
 214    public Order? StudioOrder { get; set; }
 15    /// <summary>tid для addGoodsToOrder = gid из ответа listGoods.</summary>
 2916    [Required, MaxLength(60)] public string Tid { get; set; } = string.Empty;
 3117    [Required, MaxLength(40)] public string Article { get; set; } = string.Empty;
 3018    [Required, MaxLength(80)] public string Brand { get; set; } = string.Empty;
 719    [MaxLength(160)] public string? ProductName { get; set; }
 1820    public decimal Quantity { get; set; }
 1521    public decimal? SourcePrice { get; set; }
 2822    [MaxLength(8)] public string CurrencyCode { get; set; } = "RUB";
 423    public DateTime? DeliveryAtUtc { get; set; }
 4224    [Required, MaxLength(30)] public string Status { get; set; } = ForumAutoCartItemStatus.Pending;
 025    public string? TestResultJson { get; set; }
 826    [MaxLength(1000)] public string? LastError { get; set; }
 1227    public DateTime? TestedAtUtc { get; set; }
 228    [MaxLength(450)] public string? CreatedBy { get; set; }
 1129    public DateTime CreatedAtUtc { get; set; } = DateTime.UtcNow;
 1730    public DateTime UpdatedAtUtc { get; set; } = DateTime.UtcNow;
 31}
 32
 33public static class ForumAutoCartItemStatus
 34{
 35    public const string Pending = "Pending";
 36    public const string Ready = "Ready";
 37    public const string Processing = "Processing";
 38    public const string Ordered = "Ordered";
 39    public const string Failed = "Failed";
 40    public const string Removed = "Removed";
 41    public static readonly string[] Active = [Pending, Ready, Processing, Failed];
 42}