public void ShouldBuildPostHttpMethod() { // arrange const string url = "http://fakeurl/"; var httpClient = new MockedHttpClient(); IHttpClientVerbBuilder <MockedHttpClient> builder = new HttpClientVerbBuilder <MockedHttpClient>(httpClient); // act IHttpClientQueryBuilder queryBuilder = builder.Post(url); // assert Assert.Matches(queryBuilder.HttpMethod.Method, "POST"); }
public void ShouldBuildPostHttpMethodWithJsonPayload() { // arrange const string url = "http://fakeurl/"; var payload = new FakePayload { Id = 10, NonNullDateTime = new DateTime(2010, 1, 1, 10, 00, 00), Note = "Note1", NullableDateTime = new DateTime(2012, 1, 1, 1, 0, 0, 0), Token = Guid.NewGuid() }; var httpClient = new MockedHttpClient(); IHttpClientVerbBuilder <MockedHttpClient> builder = new HttpClientVerbBuilder <MockedHttpClient>(httpClient); // act IHttpClientQueryBuilder queryBuilder = builder.PostAsJson(url, payload); // assert Assert.NotNull(queryBuilder.Content); Assert.Matches(queryBuilder.HttpMethod.Method, "POST"); JsonContent content = Assert.IsType <JsonContent>(queryBuilder.Content); }
public static async Task <Stream> AsStreamAsync(this IHttpClientQueryBuilder builder, CancellationToken cancellationToken = default(CancellationToken)) { HttpResponseMessage response = await builder.SendAsync(cancellationToken); return(await response.Content.ReadAsStreamAsync()); }
public static async Task <T> AsJsonAsync <T>(this IHttpClientQueryBuilder builder, CancellationToken cancellationToken = default(CancellationToken)) { HttpResponseMessage response = await builder.SendAsync(cancellationToken); return(await response.Content.FromJsonAsync <T>(cancellationToken)); }
public static IHttpClientQueryBuilder <TKClient> QueryFromArray <TKClient, TValue>(this IHttpClientQueryBuilder <TKClient> builder, string key, IEnumerable <TValue> value) where TKClient : HttpClient { foreach (TValue arrayValue in value) { if (arrayValue == null) { continue; } builder.Query(key, arrayValue); } return(builder); }