using System; using System.Threading; using System.Threading.Tasks; using foodmarket.Application.Inventory; namespace foodmarket.UnitTests; /// No-op реализация для юнит-тестов /// StockService, которым неважны предупреждения об отрицательных остатках (они /// проверяют только арифметику остатков). Поведение алертов покрыто отдельными /// интеграционными тестами (NegativeStockTests). public sealed class NoopNegativeStockAlertService : INegativeStockAlertService { public static readonly NoopNegativeStockAlertService Instance = new(); public Task OnStockLevelAsync( Guid storeId, Guid productId, decimal newQty, string? causeDocType, Guid? causeDocId, string? causeDocNumber, Guid? causeUserId, DateTime? causeAt, CancellationToken ct = default) => Task.CompletedTask; }