using System.Collections.Generic;
using System.Threading.Tasks;
using ManagerService.Services;
namespace ManagerService.Tests.Infrastructure
{
///
/// Bucket en mémoire. Enregistre les chemins qu'on lui demande de supprimer, ce qui
/// permet de vérifier non seulement que la suppression a eu lieu, mais qu'elle a porté
/// sur le bon emplacement — le chemin étant reconstruit quand StoragePath est nul.
///
public class FakeBlobService : IResourceBlobService
{
private readonly BlobDeleteOutcome _outcome;
public FakeBlobService(BlobDeleteOutcome outcome = BlobDeleteOutcome.Deleted)
{
_outcome = outcome;
}
public List DeletedPaths { get; } = new();
public bool IsConfigured => _outcome != BlobDeleteOutcome.NotConfigured;
public Task DeleteAsync(string storagePath)
{
DeletedPaths.Add(storagePath);
return Task.FromResult(_outcome);
}
}
}