< Summary

Information
Class: OzonDomains.Models.OrderExtension
Assembly: OzonDomains
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/OrderExtension.cs
Line coverage
66%
Covered lines: 4
Uncovered lines: 2
Coverable lines: 6
Total lines: 48
Line coverage: 66.6%
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%210%
get_Order()100%210%
get_OrderId()100%11100%
get_Key()100%11100%
get_Value()100%11100%
get_CreatedAt()100%11100%

File(s)

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

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3using System.Text.Json.Serialization;
 4
 5namespace OzonDomains.Models;
 6
 7/// <summary>
 8/// Расширение для заказа, хранящее дополнительные пары ключ/значение.
 9/// </summary>
 10[Table("order_extensions")]
 11public class OrderExtension
 12{
 13    /// <summary>
 14    /// Идентификатор записи расширения.
 15    /// </summary>
 16    [Key]
 017    public int Id { get; set; }
 18
 19    [System.Text.Json.Serialization.JsonIgnore]
 20    [Newtonsoft.Json.JsonIgnore]
 21    [ForeignKey(nameof(OrderId))]
 022    public virtual Order Order { get; set; } = null!;
 23
 24    /// <summary>
 25    /// Идентификатор заказа, к которому относится расширение.
 26    /// </summary>
 27    [Required]
 528    public int OrderId { get; set; }
 29
 30    /// <summary>
 31    /// Ключ расширения (например "Засыл").
 32    /// Максимальная длина — 100 символов.
 33    /// </summary>
 34    [Required, MaxLength(100)]
 6435    public string Key { get; set; } = null!; // например "Засыл"
 36
 37    /// <summary>
 38    /// Значение расширения. Максимальная длина — 2000 символов.
 39    /// Может быть null.
 40    /// </summary>
 41    [MaxLength(2000)]
 6742    public string? Value { get; set; }
 43
 44    /// <summary>
 45    /// Время создания записи в UTC.
 46    /// </summary>
 5547    public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
 48}