public void HandleClient_GivenGETRequestWithQueryString_Returns200Response() { MockHttpProcessor httpProcessor = new MockHttpProcessor(new HttpRequest() { Method = "GET", Url = "/Test/Example?id=10" }, new Route() { UrlRegex = "^\\/Test\\/Example\\?id=(\\d+)$", Method = "GET", Callable = (HttpRequest request) => { return(new HttpResponse() { ContentAsUTF8 = "Hello World", HttpStatusCode = HttpStatusCode.Ok }); } }); httpProcessor.HandleClient(null); Assert.AreEqual(HttpStatusCode.Ok, httpProcessor.Response.HttpStatusCode); }
public void Handle_GivenPOSTRequest_Returns200Response() { MockHttpProcessor httpProcessor = new MockHttpProcessor(new HttpRequest() { Method = "POST", Url = "/Test/Example", ContentAsUTF8 = "Hello World" }, new Route() { UrlRegex = "^/Test/Example$", Method = "POST", Callable = (HttpRequest request) => { return(new HttpResponse() { ContentAsUTF8 = "Hello World", HttpStatusCode = HttpStatusCode.Ok }); } }); httpProcessor.HandleClient(null); Assert.AreEqual(HttpStatusCode.Ok, httpProcessor.Response.HttpStatusCode); }
public void Handle_GivenPOSTRequest_Returns200Response() { MockHttpProcessor httpProcessor = new MockHttpProcessor(new HttpRequest() { Method = "POST", Url = "/Test/Example", Content = "Hello World" }, new Route() { UrlRegex = "^/Test/Example$", Method = "POST", Callable = (HttpRequest request) => { Assert.AreEqual("Hello World", request.Content); return(new HttpResponse() { ContentAsUTF8 = "Hello World", ReasonPhrase = "OK", StatusCode = "200" }); } }); httpProcessor.HandleClient(null); Assert.AreEqual("200", httpProcessor.Response.StatusCode); }
public void HandleClient_GivenGETRequestThrowsException_Returns500Response() { MockHttpProcessor httpProcessor = new MockHttpProcessor(new HttpRequest() { Method = "GET", Url = "/Test/Example" }, new Route() { UrlRegex = "^/Test/Example$", Method = "GET", Callable = (HttpRequest request) => { throw new Exception(); } }); httpProcessor.HandleClient(null); Assert.AreEqual(HttpStatusCode.InternalServerError, httpProcessor.Response.HttpStatusCode); }
public void HandleClient_GivenGETRequestWhereNotRouted_Returns404Response() { MockHttpProcessor httpProcessor = new MockHttpProcessor(new HttpRequest() { Method = "GET", Url = "/Test/Example/NotFound" }, new Route() { UrlRegex = "^/Test/Example$", Method = "GET", Callable = (HttpRequest request) => { return(new HttpResponse() { ContentAsUTF8 = "Hello World", HttpStatusCode = HttpStatusCode.Ok }); } }); httpProcessor.HandleClient(null); Assert.AreEqual(HttpStatusCode.NotFound, httpProcessor.Response.HttpStatusCode); }