public async Task JsonSerialization() { var obj = new TestPayload { Name = "test", Number = 42 }; _server.Get("/json", (req, res) => res.SendJson(obj)); _server.Start(); var(status, content) = await _httpClient.GetContent(BaseUrl + "/json"); Assert.AreEqual(status, HttpStatusCode.OK); Assert.AreEqual(content, "{\"Name\":\"test\",\"Number\":42}"); await _server.StopAsync(); }
public async Task WebTest() { var webServer = new Red.RedHttpServer(8000); using (var webApi = new RedHttpServerWebApi(webServer)) { await WebApiUnitTest.TestWeb(webApi, "http://localhost:8000/", () => { webServer.Start(); }); } await webServer.StopAsync(); }
public async Task ChannelTest() { var webServer = new Red.RedHttpServer(8000); using (var subscriptionApi = new RedHttpServerSubscriptionApi(webServer, path: "/ws", mustReceiveHeartbeatMillis: 2000, getAuthToken: (authType, authValue) => authValue, getId: authToken => authToken.ToString())) { await ChannelUnitTest.TestChannel(subscriptionApi, "ws://localhost:8000/ws", () => { webServer.Start(); }); } await webServer.StopAsync(); }
public async Task BasicRouting() { _server.Get("/", (req, res) => res.SendString("1")); _server.Get("/hello", (req, res) => res.SendString("2")); _server.Start(); var(status0, content0) = await _httpClient.GetContent(BaseUrl); var(status1, content1) = await _httpClient.GetContent(BaseUrl + "/"); var(status2, content2) = await _httpClient.GetContent(BaseUrl + "/hello"); Assert.AreEqual(HttpStatusCode.OK, status0); Assert.AreEqual(HttpStatusCode.OK, status1); Assert.AreEqual(HttpStatusCode.OK, status2); Assert.AreEqual("1", content0); Assert.AreEqual("1", content1); Assert.AreEqual("2", content2); await _server.StopAsync(); }