public void ShouldReturnRequestUri() { using (WebServer webServer = new WebServer("http://localhost:9998/")) { webServer.ExecuteRequestAndInvokeAssertions( () => SendRequest(RequestUri, null), requestWrapper => { Assert.IsNotNull(requestWrapper); Assert.AreEqual(RequestUri, requestWrapper.Uri.AbsoluteUri); }); } }
public void IfETagIsEmptyShouldReturnNullCondition() { using (WebServer webServer = new WebServer("http://localhost:9998/")) { webServer.ExecuteRequestAndInvokeAssertions( () => SendRequest(RequestUri, null), requestWrapper => { Assert.IsNotNull(requestWrapper); Assert.AreEqual(NullCondition.Instance, requestWrapper.Condition); }); } }
public void IfETagIsNotEmptyShouldReturnIfNoneMatchCondition() { string eTagValue = "xyz"; IRepresentation representation = new HeadersOnlyRepresentation(new ETag(eTagValue)); using (WebServer webServer = new WebServer("http://localhost:9998/")) { webServer.ExecuteRequestAndInvokeAssertions( () => SendRequest(RequestUri, eTagValue), requestWrapper => { Assert.IsNotNull(requestWrapper); Assert.IsInstanceOf(typeof (IfNoneMatch), requestWrapper.Condition); Output output = Output.For(requestWrapper.Condition.CreateResponse(representation)); Assert.AreEqual(304, output.StatusCode); Assert.AreEqual("Not Modified", output.StatusDescription); }); } }
private void ExecuteTest(Action<HttpListenerResponseWrapper> generateResponse, Action<HttpWebResponse> assertions) { using (WebServer webServer = new WebServer("http://localhost:9998/")) { HttpWebResponse response = webServer.ExecuteRequestAndGenerateResponse( () => SendRequest(RequestUri), generateResponse); assertions.Invoke(response); response.Close(); } }