public async Task SendBroadcastLogUnitTest_ShouldSucceed() { var client = BuildSenderSubstitute_ReturnsSuccessStatus(); var broadcastService = new BroadcastService(client); var logger = Substitute.For <ILogger>(); var task = broadcastService.SendMessageAsync(FirstListName, PlainText.Parse("UnitTests"), logger); await TestInfoLogsWithTwoArgs <string, Document>(task, 2, logger); }
private async Task Send_Broadcast_UnitTest(string listName) { var sender = Substitute.For <ISender>(); var calls = 0; sender.When(x => x.SendMessageAsync(Arg.Any <Message>(), Arg.Any <CancellationToken>())).Do(x => calls++); var broadcastService = new BroadcastService(sender); await broadcastService.SendMessageAsync(listName, PlainText.Parse("UnitTests"), _logger); calls.ShouldBeGreaterThan(0); }
public async Task SendBroadcastLogUnitTest_ShouldThrowEx() { var logger = Substitute.For <ILogger>(); var client = BuildSenderSubstitute_ThrowsException(); var broadcastService = new BroadcastService(client); var exceptionThrown = false; try { await broadcastService.SendMessageAsync(FirstListName, PlainText.Parse("UnitTests"), logger); } catch (Exception ex) { logger.Received(1).Error(ex, Arg.Any <string>(), Arg.Any <string>(), Arg.Any <Document>()); exceptionThrown = true; } finally { exceptionThrown.ShouldBe(true); } }