f813cc4854
CI/CD / CI · API (dotnet build + test) (pull_request) Successful in 43s
CI/CD / CI · Admin API (dotnet build) (pull_request) Successful in 44s
CI/CD / CI · Dashboard (tsc) (pull_request) Successful in 1m7s
CI/CD / CI · Admin Web (tsc) (pull_request) Successful in 36s
CI/CD / CI · Website (tsc) (pull_request) Successful in 45s
CI/CD / CI · Koja (tsc) (pull_request) Successful in 51s
CI/CD / Deploy · all services (pull_request) Has been skipped
The test project no longer compiled: recent feature commits changed interfaces and DTOs without updating the test doubles/call sites, so the whole suite (and therefore CI) was failing to build. - NoOpInventoryService: add IInventoryService.GetPurchasesSummaryAsync and the new string? userId param on AdjustAsync. - NoOpLoyaltyService: add ILoyaltyService.RedeemOnOrderAsync. - NoOpOrderNotificationService: add NotifyCallWaiterAsync. - New NoOpAbuseProtectionService and NoOpMediaStorageService test doubles. - QrMenuTests: ReviewService/PublicService gained IAbuseProtectionService + IHttpContextAccessor (and ReviewService an IMediaStorageService); wire the new no-op doubles + a real HttpContextAccessor. - PrintingTests: OrderDto gained a DisplayNumber int between CreatedAt and Items; pass it. - DiscoverFilterTests: add missing `using Xunit;` and the new openNow arg on DiscoverFilterParams.FromQuery. Result: dotnet test -> Passed: 81, Failed: 0. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
43 lines
1.9 KiB
C#
43 lines
1.9 KiB
C#
using Meezi.API.Services;
|
|
|
|
namespace Meezi.API.Tests;
|
|
|
|
internal sealed class NoOpInventoryService : IInventoryService
|
|
{
|
|
public Task<IReadOnlyList<IngredientDto>> ListAsync(string cafeId, CancellationToken ct = default) =>
|
|
Task.FromResult<IReadOnlyList<IngredientDto>>([]);
|
|
|
|
public Task<IReadOnlyList<IngredientDto>> LowStockAsync(string cafeId, CancellationToken ct = default) =>
|
|
Task.FromResult<IReadOnlyList<IngredientDto>>([]);
|
|
|
|
public Task<IngredientDto?> CreateAsync(string cafeId, CreateIngredientRequest request, CancellationToken ct = default) =>
|
|
Task.FromResult<IngredientDto?>(null);
|
|
|
|
public Task<IngredientDto?> UpdateAsync(string cafeId, string ingredientId, UpdateIngredientRequest request, CancellationToken ct = default) =>
|
|
Task.FromResult<IngredientDto?>(null);
|
|
|
|
public Task<IngredientDto?> AdjustAsync(string cafeId, string ingredientId, AdjustStockRequest request, string? userId, CancellationToken ct = default) =>
|
|
Task.FromResult<IngredientDto?>(null);
|
|
|
|
public Task<InventoryPurchasesSummaryDto> GetPurchasesSummaryAsync(
|
|
string cafeId,
|
|
string branchId,
|
|
DateOnly from,
|
|
DateOnly to,
|
|
CancellationToken ct = default) =>
|
|
Task.FromResult(new InventoryPurchasesSummaryDto(0, 0, []));
|
|
|
|
public Task<MenuItemRecipeDto?> GetRecipeAsync(string cafeId, string menuItemId, CancellationToken ct = default) =>
|
|
Task.FromResult<MenuItemRecipeDto?>(null);
|
|
|
|
public Task<MenuItemRecipeDto?> SetRecipeAsync(string cafeId, string menuItemId, SetMenuItemRecipeRequest request, CancellationToken ct = default) =>
|
|
Task.FromResult<MenuItemRecipeDto?>(null);
|
|
|
|
public Task<OrderDeductionResult> DeductForOrderAsync(
|
|
string cafeId,
|
|
string orderId,
|
|
IReadOnlyList<(string MenuItemId, int Quantity)> lines,
|
|
CancellationToken ct = default) =>
|
|
Task.FromResult(new OrderDeductionResult(false, []));
|
|
}
|