public async Task Send_farfare_notice_when_user_has_fanfare_and_is_arriving(bool hasFanfare, int timesSent) { // arrange var username = "******"; var expectedFanfare = new FanfareInfo { Message = "message " + Guid.NewGuid(), Timeout = 12312, YouTubeCode = "ytcode" + Guid.NewGuid(), YouTubeStartTime = 111, YouTubeEndTime = 222 }; var twitchLibMessage = TwitchLibMessageBuilder.Create().WithUsername(username).Build(); var chatMessage = ChatMessageBuilder.Create().WithTwitchLibMessage(twitchLibMessage).Build(); var request = new UserHasArrived(chatMessage); MockCollection.Setup(x => x.ExistsAsync($"{username}::arrived_recently", null)) .ReturnsAsync(new FakeExistsResult(false)); MockCollection.Setup(x => x.GetAsync(It.IsAny <string>(), null)) .ReturnsAsync(new FakeGetResult(new TwitcherProfile { HasFanfare = hasFanfare, Fanfare = expectedFanfare })); // act await _handler.Handle(request, CancellationToken.None); // assert _mockTwitchHub.Verify(x => x.ReceiveFanfare(expectedFanfare), Times.Exactly(timesSent)); }
public async Task ReceiveFanfare(FanfareInfo fanfareInfo) { await Clients.All.ReceiveFanfare(fanfareInfo); }