public async Task Should_Not_Dispatch_Unsubscribe_Message_When_Action_Is_Not_Unsubscribe()
        {
            var mockData = GetWebHookSucceededMock("anythingelse");

            var request = FunctionRequestHelper.CreateHttpRequest(null, null, GetBodyFromMock(mockData));

            var http     = new WebhookFunction(_queueWrapperMock.Object);
            var response = (StatusCodeResult)await http.Run(request, LoggerHelper.CreateLogger());

            _queueWrapperMock.Verify(x => x.SendUnsubscribeMessage(It.IsAny <WebhookModel>()), Times.Never());
            Assert.AreEqual(response.StatusCode, 200);
        }
        public async Task Should_Dispatch_Unsubscribe_Message_When_Action_Is_Unsubscribe_And_Status_Is_Valid()
        {
            var mockData = GetWebHookSucceededMock(WebhookActionType.Unsubscribe);

            var request = FunctionRequestHelper.CreateHttpRequest(null, null, GetBodyFromMock(mockData));

            var http     = new WebhookFunction(_queueWrapperMock.Object);
            var response = (StatusCodeResult)await http.Run(request, LoggerHelper.CreateLogger());

            _queueWrapperMock.Verify(x => x.SendUnsubscribeMessage(It.Is <WebhookModel>(x => JsonConvert.SerializeObject(x) == JsonConvert.SerializeObject(mockData))), Times.Once);
            Assert.AreEqual(response.StatusCode, 200);
        }