public async void VerifyWebhookAsyncShouldThrowExceptionWithNullResponse() { var facebookClientWrapper = new FacebookClientWrapper(_testOptions); var httpRequest = new Mock <HttpRequest>(); await Assert.ThrowsAsync <ArgumentNullException>(async() => { await facebookClientWrapper.VerifyWebhookAsync(httpRequest.Object, null, default); }); }
public async void VerifyWebhookAsyncShouldSendUnauthorizedWhenNotVerified() { var facebookClientWrapper = new FacebookClientWrapper(_testOptions); var httpRequest = new Mock <HttpRequest>(); var httpResponse = new Mock <HttpResponse>(); httpRequest.SetupGet(req => req.Query[It.IsAny <string>()]).Returns("WrongVerifyToken"); httpResponse.SetupAllProperties(); httpResponse.Setup(_ => _.Body.WriteAsync(It.IsAny <byte[]>(), It.IsAny <int>(), It.IsAny <int>(), It.IsAny <CancellationToken>())) .Callback((byte[] data, int offset, int length, CancellationToken token) => { if (length > 0) { var actual = Encoding.UTF8.GetString(data); } }); await facebookClientWrapper.VerifyWebhookAsync(httpRequest.Object, httpResponse.Object, default); Assert.True(httpResponse.Object.StatusCode == (int)HttpStatusCode.Unauthorized); }