public void TestRequestBuilder() { Assert.Equal(_requestOneHeader, Request .Has(Method.Get) .And("/".ToMatchableUri()) .And(RequestHeader.WithHost("test.com")) .ToString()); Assert.Equal(_requestOneHeader, Request .WithMethod(Method.Get) .WithUri("/") .WithHeader(RequestHeader.Host, "test.com") .ToString()); Assert.Equal(_requestTwoHeadersWithBody, Request .Has(Method.Put) .And("/one/two/three".ToMatchableUri()) .And(RequestHeader.WithHost("test.com")) .And(RequestHeader.WithContentLength(19)) .And(Body.From("{ text:\"some text\"}")) .ToString()); Assert.Equal(_requestTwoHeadersWithBody, Request .WithMethod(Method.Put) .WithUri("/one/two/three") .WithHeader(RequestHeader.Host, "test.com") .WithHeader(RequestHeader.ContentLength, 19) .WithBody("{ text:\"some text\"}") .ToString()); Assert.Equal(_requestMultiHeaders, Request .Has(Method.Get) .And("/one".ToMatchableUri()) .And(RequestHeader.WithHost("test.com")) .And(RequestHeader.WithAccept("text/plain")) .And(RequestHeader.WithCacheControl("no-cache")) .ToString()); Assert.Equal(_requestMultiHeaders, Request .WithMethod(Method.Get) .WithUri("/one") .WithHeader(RequestHeader.Host, "test.com") .WithHeader(RequestHeader.Accept, "text/plain") .WithHeader(RequestHeader.CacheControl, "no-cache") .ToString()); Assert.Equal(_requestMultiHeadersWithBody, Request .Has(Method.Post) .And("/one/two/".ToMatchableUri()) .And(RequestHeader.WithHost("test.com")) .And(RequestHeader.WithContentLength(19)) .And(RequestHeader.WithAccept("text/plain")) .And(RequestHeader.WithCacheControl("no-cache")) .And(Body.From("{ text:\"some text\"}")) .ToString()); Assert.Equal(_requestMultiHeadersWithBody, Request .Has(Method.Post) .WithUri("/one/two/") .WithHeader(RequestHeader.Host, "test.com") .WithHeader(RequestHeader.ContentLength, 19) .WithHeader(RequestHeader.Accept, "text/plain") .WithHeader(RequestHeader.CacheControl, "no-cache") .WithBody("{ text:\"some text\"}") .ToString()); }