public async void Create_Should_Return_WebHookEvent() { // Arrange var fakedHttpContext = new HttpContextFaker().Generate(); var fakedWebHookEvent = new WebHookEventFaker().Generate(); // Act var webHookEvent = await _sut.Create(fakedHttpContext); // Assert webHookEvent.Should().NotBeNull(); webHookEvent.EventName.Should().Be(fakedWebHookEvent.EventName); }
public async void Invoke_Should_Return_Return_Correct_Status_Code(string secret, int registryCalls, HttpStatusCode statusCode) { // Arrange var fakedWebHookEvent = new WebHookEventFaker().Generate(); var fakedHttpContext = new HttpContextFaker().Generate(); var mockedWebHookHandlerRegistry = Substitute.For <IWebHookHandlerRegistry>(); var mockedWebHookEventFactory = Substitute.For <IWebHookEventFactory>(); var mockedWebHookEventValidator = new WebHookEventValidator(Options.Create(new AutoGitWebHookOptions { WebHookSecret = secret })); mockedWebHookEventFactory.Create(fakedHttpContext).Returns(fakedWebHookEvent); // Act await _sut.Invoke(fakedHttpContext, mockedWebHookHandlerRegistry, mockedWebHookEventFactory, mockedWebHookEventValidator); // Assert mockedWebHookEventFactory.Received(1); mockedWebHookHandlerRegistry.Received(registryCalls); fakedHttpContext.Response.StatusCode.Should().Be((int)statusCode); }