public async Task Should_record_request_history()
        {
            var client = new MockHttpClient();

            client.When("*").Then(HttpStatusCode.OK);


            await client.GetAsync("http://mockhttphandler.local/1");

            await client.GetAsync("http://mockhttphandler.local/2");

            await client.GetAsync("http://mockhttphandler.local/3");

            Assert.Equal(3, client.RequestHistory.Count);
            Assert.Equal("/1", client.RequestHistory[0].RequestUri.AbsolutePath);
            Assert.Equal("/2", client.RequestHistory[1].RequestUri.AbsolutePath);
            Assert.Equal("/3", client.RequestHistory[2].RequestUri.AbsolutePath);
        }
Beispiel #2
0
        public async Task When_url_condition_should_match(string requestUri, string queryUri, bool match)
        {
            var client = new MockHttpClient();

            client.When(new Uri(queryUri, UriKind.RelativeOrAbsolute))
            .Then(HttpStatusCode.OK);

            Assert.Equal(match ? HttpStatusCode.OK : HttpStatusCode.NotFound, (await client.GetAsync(requestUri)).StatusCode);
        }
Beispiel #3
0
        public async Task When_url_query_condition_should_match(string requestUri, string pathRule, bool match)
        {
            var client = new MockHttpClient();

            client.When(pathRule)
            .Then(HttpStatusCode.OK);

            Assert.Equal(match ? HttpStatusCode.OK : HttpStatusCode.NotFound, (await client.GetAsync(requestUri)).StatusCode);
        }
Beispiel #4
0
        public async Task When_multiple_conditions_should_match_all(string requestUri, string queryUri1, string queryUri2, bool match)
        {
            var client = new MockHttpClient();

            client.When(queryUri1)
            .When(queryUri2)
            .Then(HttpStatusCode.OK);

            Assert.Equal(match ? HttpStatusCode.OK : HttpStatusCode.NotFound, (await client.GetAsync(requestUri)).StatusCode);
        }
Beispiel #5
0
        public async Task When_string_content_different_should_not_match()
        {
            // Arrange
            var client = new MockHttpClient();

            client
            .When(x => x.Content.IsString("name=Wayne"))
            .Then(HttpStatusCode.OK);

            // Act
            var result = await client.GetAsync(new Uri("http://mockhttphandler.local"));

            // Assert
            Assert.NotEqual(HttpStatusCode.OK, result.StatusCode);
        }