protected async Task <HttpResponseMessage> SendRequest(Action <AppSendBuilder> configure) { var request = new HttpRequestMessage(HttpMethod.Get, _client.HttpClient.BaseAddress); var builder = new AppSendBuilder(request); configure(builder); var response = await _client.SendAsync(request); var expectedStatus = request.GetExpectedStatus(); if (expectedStatus.HasValue && expectedStatus.Value != response.StatusCode) { string content = await response.Content.ReadAsStringAsync(); if (content.Length > 1000) { content = content.Substring(0, 1000); } throw new HttpRequestException($"Expected status code {expectedStatus.Value} but received status code {response.StatusCode} ({response.ReasonPhrase}).\n" + content); } return(response); }
public static AppSendBuilder StatusCodeShouldBeOk(this AppSendBuilder builder) { return(builder.ExpectedStatus(HttpStatusCode.OK)); }
public static AppSendBuilder StatusCodeShouldBeBadRequest(this AppSendBuilder builder) { return(builder.ExpectedStatus(HttpStatusCode.BadRequest)); }
public static AppSendBuilder StatusCodeShouldBeUnauthorized(this AppSendBuilder builder) { return(builder.ExpectedStatus(HttpStatusCode.Unauthorized)); }
public static AppSendBuilder StatusCodeShouldBeAccepted(this AppSendBuilder builder) { return(builder.ExpectedStatus(HttpStatusCode.Accepted)); }