< Summary

Information
Class: Services.BitrixStockServices.BitrixStockMskDateTime
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/BitrixStockServices/BitrixStockMskDateTime.cs
Line coverage
100%
Covered lines: 9
Uncovered lines: 0
Coverable lines: 9
Total lines: 29
Line coverage: 100%
Branch coverage
100%
Covered branches: 4
Total branches: 4
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
ToMsk(...)100%44100%
Format(...)100%11100%
FormatNow(...)100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/BitrixStockServices/BitrixStockMskDateTime.cs

#LineLine coverage
 1using Services.BackgroundJobsServices;
 2
 3namespace Services.BitrixStockServices;
 4
 5/// <summary>UTC из MySQL/EF → отображение MSK (UTC+3).</summary>
 6public static class BitrixStockMskDateTime
 7{
 8    public static DateTime ToMsk(DateTime value)
 9    {
 27210        var utc = value.Kind switch
 27211        {
 27012            DateTimeKind.Utc => value,
 113            DateTimeKind.Local => value.ToUniversalTime(),
 114            _ => DateTime.SpecifyKind(value, DateTimeKind.Utc)
 27215        };
 16
 27217        return TimeZoneInfo.ConvertTimeFromUtc(utc, RussianTimeZoneHelper.Zone);
 18    }
 19
 20    public static string Format(DateTime value, string format = "dd.MM.yyyy HH:mm")
 21    {
 26922        return ToMsk(value).ToString(format);
 23    }
 24
 25    public static string FormatNow(string format = "dd.MM.yyyy HH:mm")
 26    {
 227        return Format(DateTime.UtcNow, format);
 28    }
 29}