public async Task SearchEventsAsync_ShouldThrowException_WhenResponseCodeNotOk(HttpStatusCode statusCode)
        {
            Client
            .ExecuteTaskAsync <SearchEventsResponse>(Arg.Any <IRestRequest>())
            .Returns(new RestResponse <SearchEventsResponse>
            {
                StatusCode = statusCode
            });

            await Assert.ThrowsAnyAsync <InvalidDataException>(() => _sut.SearchEventsAsync(new SearchEventsRequest()));
        }
        public void SearchEventsAsync_ShouldReturnSearchEventsRequest()
        {
            var request = new SearchEventsRequest();

            var searchEventsResponse = _sut.SearchEventsAsync(request).Result;

            Assert.NotNull(searchEventsResponse);
            Assert.IsType <SearchEventsResponse>(searchEventsResponse);
            Assert.IsAssignableFrom <IApiResponse>(searchEventsResponse);

            var iApiResponse = _sut.CallSearchEventsAsync(request).Result;

            Assert.NotNull(iApiResponse);
            Assert.IsAssignableFrom <IRestResponse>(iApiResponse);

            var jobject = SimpleJson.SimpleJson.SerializeObject(searchEventsResponse);

            Approvals.VerifyJson(jobject);
        }