public void Build_SetsUriOnRequest() { var builder = new HttpBuilder(new HttpClient()); var request = builder.Build(HttpMethod.Options, _uri); request.RequestUri.Should().Be(_uri); }
public void Build_SetsMethodOnRequest() { var builder = new HttpBuilder(new HttpClient()); var method = HttpMethod.Trace; var request = builder.Build(method, _uri); request.Method.Should().Be(method); }
public void Build_SetsContentOnRequest() { var builder = new HttpBuilder(new HttpClient()); builder.Content(new { Name = "Sergej Popov" }); var request = builder.Build(HttpMethod.Get, _uri); request.Content.ReadAsStringAsync().Result.Should().Be("{\"Name\":\"Sergej Popov\"}"); }
public void Build_SetsRequestHeaderOnRequest() { var date = DateTime.UtcNow; var builder = new HttpBuilder(new HttpClient()); builder.Headers(headers => headers.Date = date); var request = builder.Build(HttpMethod.Options, _uri); request.Headers.Date.Should().Be(date); }
public void Build_SetsMimeOnRequest() { var builder = new HttpBuilder(new HttpClient()); builder.Content(new { Name = "Sergej Popov" }); builder.Mime(Mime.ImagePng); var request = builder.Build(HttpMethod.Options, _uri); request.Content.Headers.ContentType.Should().Be(MediaTypeHeaderValue.Parse(Mime.ImagePng.GetAlias())); }
public void Build_SetsContentHeaderOnRequest() { const long length = 123L; var builder = new HttpBuilder(new HttpClient()); builder.Content(new { Name = "Sergej Popov" }); builder.Headers(headers => headers.ContentLength = length); var request = builder.Build(HttpMethod.Options, _uri); request.Content.Headers.ContentLength.Should().Be(length); }
public void Build_SetsVersionOnRequest() { var version = new Version(1, 1); var builder = new HttpBuilder(new HttpClient()); builder.Version(version); var request = builder.Build(HttpMethod.Options, _uri); request.Version.Should().Be(version); }
public void Build_SetsTimeoutOnClient() { var timeout = TimeSpan.FromSeconds(15); var builder = new HttpBuilder(new HttpClient()); builder.Timeout(timeout); builder.Build(HttpMethod.Head, _uri); builder.Client.Timeout.Should().Be(timeout); }
public void Build_Throws_WhenContentNotSet_AndContentHeaderIsSet() { var builder = new HttpBuilder(new HttpClient()); builder.Headers(headers => { headers.ContentLanguage.Add("en-GB"); }); var request = builder.Build(HttpMethod.Options, _uri); }
public void Build_Throws_WhenContentNotSet_AndMimeTypeIsSet() { var builder = new HttpBuilder(new HttpClient()); builder.Mime(Mime.ImagePng); var request = builder.Build(HttpMethod.Options, _uri); }