public async Task PostNullRequestBodyReturnsBadRequest() { // Arrange var expectedResult = new StatusCodeResult((int)HttpStatusCode.BadRequest); var function = new PagesWebhookHttpTrigger(fakeLogger, fakewebhookReceiver); var request = new DefaultHttpRequest(new DefaultHttpContext()); A.CallTo(() => fakewebhookReceiver.ReceiveEvents(A <string> .Ignored)).Returns(new StatusCodeResult(200)); // Act var result = await function.Run(request).ConfigureAwait(false); // Assert var statusResult = Assert.IsType <StatusCodeResult>(result); Assert.Equal(expectedResult.StatusCode, statusResult.StatusCode); }
public async Task PostCatchesException() { // Arrange var expectedResult = new StatusCodeResult((int)HttpStatusCode.InternalServerError); var function = new PagesWebhookHttpTrigger(fakeLogger, fakewebhookReceiver); var request = BuildRequestWithValidBody("A webhook test"); A.CallTo(() => fakewebhookReceiver.ReceiveEvents(A <string> .Ignored)).Throws(new NotImplementedException()); // Act var result = await function.Run(request).ConfigureAwait(false); // Assert var statusResult = Assert.IsType <StatusCodeResult>(result); Assert.Equal(expectedResult.StatusCode, statusResult.StatusCode); }
public async Task PostWithBodyReturnsOk() { // Arrange var expectedResult = new StatusCodeResult((int)HttpStatusCode.OK); var function = new PagesWebhookHttpTrigger(fakeLogger, fakewebhookReceiver); var request = BuildRequestWithValidBody("A webhook test"); A.CallTo(() => fakewebhookReceiver.ReceiveEvents(A <string> .Ignored)).Returns(new StatusCodeResult(200)); // Act var result = await function.Run(request).ConfigureAwait(false); // Assert A.CallTo(() => fakewebhookReceiver.ReceiveEvents(A <string> .Ignored)).MustHaveHappenedOnceExactly(); var statusResult = Assert.IsType <StatusCodeResult>(result); Assert.Equal(expectedResult.StatusCode, statusResult.StatusCode); }