using System; using System.IO; using System.Threading; using System.Threading.Tasks; using MalwareMultiScan.Backends.Interfaces; namespace MalwareMultiScan.Backends.Backends.Implementations { public class DummyScanBackend : IScanBackend { public string Id { get; } = "dummy"; public Task ScanAsync(string path, CancellationToken cancellationToken) { return Scan(); } public Task ScanAsync(Uri uri, CancellationToken cancellationToken) { return Scan(); } public Task ScanAsync(Stream stream, CancellationToken cancellationToken) { return Scan(); } private static async Task Scan() { throw new Exception("Something"); await Task.Delay( TimeSpan.FromSeconds(5)); return new[] {"Malware.Dummy.Result"}; } } }