using TarninaHub.Application.Abstractions;
using TarninaHub.Application.Dtos;
namespace TarninaHub.Tests.Stubs;
/// No-op INotificationService stub for controller tests.
public sealed class StubNotificationService : INotificationService
{
public int StaffNotifications { get; private set; }
public int UserNotifications { get; private set; }
public Task NotifyStaffAsync(
string type,
IReadOnlyDictionary payload,
CancellationToken cancellationToken)
{
StaffNotifications++;
return Task.CompletedTask;
}
public Task NotifyUserAsync(
string userId,
string type,
IReadOnlyDictionary payload,
CancellationToken cancellationToken)
{
UserNotifications++;
return Task.CompletedTask;
}
public Task> ListForUserAsync(
string userId,
CancellationToken cancellationToken) => Task.FromResult>([]);
public Task MarkReadAsync(
string notificationId,
string userId,
CancellationToken cancellationToken) => Task.FromResult(null);
}