public async Task Handle_GetLostCommandPresent_DeletesPullDogEnvironment() { //Arrange var fakeMediator = Substitute.For <IMediator>(); var handler = new BotCommandPayloadHandler( fakeMediator, Substitute.For <IHostEnvironment>()); //Act await handler.HandleAsync(new WebhookPayloadContext( new WebhookPayload() { Comment = new CommentPayload() { Body = "@pull-dog down" } }, null !, new PullDogRepository(), new PullDogPullRequest())); //Assert await fakeMediator .Received(1) .Send(Arg.Any <DeleteInstanceByPullRequestCommand>()); }
public async Task Handle_GoFetchCommandPresentWithEnvironmentName_ProvisionsPullDogEnvironment() { //Arrange var fakeMediator = Substitute.For <IMediator>(); var fakeHostEnvironment = Substitute.For <IHostEnvironment>(); fakeHostEnvironment.EnvironmentName.Returns("environment"); var handler = new BotCommandPayloadHandler( fakeMediator, fakeHostEnvironment); //Act await handler.HandleAsync(new WebhookPayloadContext( new WebhookPayload() { Comment = new CommentPayload() { Body = "@pull-dog up environment" } }, null !, new PullDogRepository(), new PullDogPullRequest())); //Assert await fakeMediator .Received(1) .Send(Arg.Any <ProvisionPullDogEnvironmentCommand>()); }
public async Task CanHandle_ValidConditions_ReturnsTrue() { //Arrange var fakeMediator = Substitute.For <IMediator>(); var handler = new BotCommandPayloadHandler( fakeMediator, Substitute.For <IHostEnvironment>()); //Act var result = handler.CanHandle(new WebhookPayload() { Action = "created", Issue = new IssuePayload() { PullRequest = new IssuePullRequestPayload() }, Comment = new CommentPayload() }); //Assert Assert.IsTrue(result); }