public async void ReturnsSuccessfulResponseFromRemote()
        {
            _fakeHttpClient.For("a url").Return(HttpResponse.Successful(200, "some data"));
            var          logger     = new Mock <ILogger <LoggingHttpClient> >().Object;
            var          httpClient = new LoggingHttpClient(_fakeHttpClient, logger);
            HttpResponse response   = await httpClient.Get("a url", new Dictionary <string, string>());

            Assert.Equal(200, response.StatusCode);
        }
        public async void HandlesNoResponseFromRemote()
        {
            _fakeHttpClient.For("a url").Throw(
                new AggregateException(new HttpRequestException()));
            var          logger     = new Mock <ILogger <LoggingHttpClient> >().Object;
            var          httpClient = new LoggingHttpClient(_fakeHttpClient, logger);
            HttpResponse response   = await httpClient.Get("a url", new Dictionary <string, string>());

            Assert.Equal(503, response.StatusCode);
            Assert.Equal("Failed to invoke the requested resource", response.Error);
        }
Пример #3
0
        public void HandlesSuccessFromRemote()
        {
            _fakeHttpClient.For("a url")
            .Return(HttpResponse.Successful("some data"));

            var          httpClient = new LoggingHttpClient(_fakeHttpClient, _fakeLogger);
            HttpResponse response   = AsyncTestHelper.Resolve(httpClient.Get("a url"));

            Assert.Equal("Querying: a url", _fakeLogger.InfoMessage);
            Assert.Equal("Response: " + response, _fakeLogger.DebugMessage);
            Assert.Null(_fakeLogger.ErrorMessage);
        }
Пример #4
0
        public async void DoesNotLogAccessKey()
        {
            var urlWithKey = "https://fake.url/spaces/SPACE/entries?access_token=KEY&content_type=topic";

            _fakeHttpClient.For(urlWithKey).Return(HttpResponse.Successful("A response"));

            var httpClient = new LoggingHttpClient(_fakeHttpClient, _fakeLogger);
            await httpClient.Get(urlWithKey);

            Assert.DoesNotContain("KEY", _fakeLogger.InfoMessage);
            Assert.Contains("access_token=*****", _fakeLogger.InfoMessage);
            Assert.Equal("Querying: https://fake.url/spaces/SPACE/entries?access_token=*****&content_type=topic",
                         _fakeLogger.InfoMessage);
        }