public async Task PostsContentToEndpoint(User inputData, JSendClient client) { // Exercise system using (client) using (var response = await client.PostAsync <User>("http://localhost/users/post-echo", inputData)) { // Verify outcome response.Data.ShouldBeEquivalentTo(inputData); } }
public async Task PostAsync_SetsContentTypeHeader( [FrozenAsHttpClient] HttpClientSpy httpClientSpy, Uri uri, object content, [Greedy] JSendClient client) { // Exercise system await client.PostAsync(uri, content); // Verify outcome var request = httpClientSpy.Request; request.Content.Headers.ContentType.MediaType.Should().Be("application/json"); }
public async Task PostAsync_SendsPostRequest( [FrozenAsHttpClient] HttpClientSpy httpClientSpy, Uri uri, object content, [Greedy] JSendClient client) { // Exercise system await client.PostAsync(uri, content); // Verify outcome var request = httpClientSpy.Request; request.Method.Should().Be(HttpMethod.Post); }
public async Task PostAsync_SetsCharSet( [FrozenAsHttpClient] HttpClientSpy httpClientSpy, Uri uri, object content, [Greedy] JSendClient client) { // Fixture setup var expectedCharSet = client.Encoding.WebName; // Exercise system await client.PostAsync(uri, content); // Verify outcome var request = httpClientSpy.Request; request.Content.Headers.ContentType.CharSet.Should().Be(expectedCharSet); }
public async Task PostAsync_SerializesContent( [FrozenAsHttpClient] HttpClientSpy httpClientSpy, Uri uri, Model content, [Greedy] JSendClient client) { // Fixture setup var expectedContent = JsonConvert.SerializeObject(content); // Exercise system await client.PostAsync(uri, content); // Verify outcome var actualContent = httpClientSpy.Content; actualContent.Should().Be(expectedContent); }
public async Task PostAsync_SetsUri( string uri, Uri expectedUri, object content, [FrozenAsHttpClient] HttpClientSpy httpClientSpy, [Greedy] JSendClient client) { // Exercise system await client.PostAsync(uri, content); // Verify outcome var request = httpClientSpy.Request; request.RequestUri.Should().Be(expectedUri); }
public async Task PostAsync_ReturnsParsedResponse( HttpResponseMessage httpResponse, JSendResponse <JToken> parsedResponse, [FrozenAsHttpClient] HttpClientStub httpClientStub, Uri uri, Model content, [Greedy] JSendClient client) { // Fixture setup httpClientStub.ReturnOnSend = httpResponse; Mock.Get(client.Parser) .Setup(p => p.ParseAsync <JToken>(It.IsAny <JsonSerializerSettings>(), httpResponse)) .ReturnsAsync(parsedResponse); // Exercise system var response = await client.PostAsync(uri, content); // Verify outcome response.Should().BeSameAs(parsedResponse); }
public async Task SendsPostRequestsToTheCorrectEndpoint( string baseAddress, string requestUri, User user, JSendClient client) { using (client) { // Fixture setup client.HttpClient.BaseAddress = baseAddress == null ? null : new Uri(baseAddress); // Exercise system using (var response = await client.PostAsync <string>(requestUri, user)) { // Verify outcome response.Status.Should().Be(JSendStatus.Success); response.Data.Should().Be("post"); } } }
public async Task SendsPostRequestsToTheCorrectEndpoint( string baseAddress, string requestUri, User user, JSendClient client) { using (client) { // Fixture setup client.HttpClient.BaseAddress = baseAddress == null ? null : new Uri(baseAddress); // Exercise system using (var response = await client.PostAsync<string>(requestUri, user)) { // Verify outcome response.Status.Should().Be(JSendStatus.Success); response.Data.Should().Be("post"); } } }
public async Task PostsContentToEndpoint(User inputData, JSendClient client) { // Exercise system using (client) using (var response = await client.PostAsync<User>("http://localhost/users/post-echo", inputData)) { // Verify outcome response.Data.ShouldBeEquivalentTo(inputData); } }