diff --git a/test/Microsoft.AspNet.Mvc.FunctionalTests/BasicTests.cs b/test/Microsoft.AspNet.Mvc.FunctionalTests/BasicTests.cs index 821127897f..5b6aba1c34 100644 --- a/test/Microsoft.AspNet.Mvc.FunctionalTests/BasicTests.cs +++ b/test/Microsoft.AspNet.Mvc.FunctionalTests/BasicTests.cs @@ -68,6 +68,39 @@ namespace Microsoft.AspNet.Mvc.FunctionalTests Assert.Equal(expectedContent, responseContent); } + [Fact] + public async Task CanRender_SimpleViews() + { + // Arrange + var server = TestServer.Create(_provider, _app); + var client = server.Handler; + var expectedContent = await _resourcesAssembly.ReadResourceAsStringAsync("BasicWebSite.Home.PlainView.html"); + + // Act + var result = await client.GetAsync("http://localhost/Home/PlainView"); + Assert.Equal(200, result.StatusCode); + Assert.Equal(result.ContentType, "text/html; charset=utf-8"); + var responseContent = await result.ReadBodyAsStringAsync(); + + // Assert + Assert.Equal(expectedContent, responseContent); + } + + [Fact] + public async Task CanReturn_ResultsWithoutContent() + { + // Arrange + var server = TestServer.Create(_provider, _app); + var client = server.Handler; + + // Act + var result = await client.GetAsync("http://localhost/Home/NoContentResult"); + + // Assert + Assert.Equal(204, result.StatusCode); + Assert.Equal("", await result.ReadBodyAsStringAsync()); + } + [Fact] public async Task ActionDescriptors_CreatedOncePerRequest() { diff --git a/test/Microsoft.AspNet.Mvc.FunctionalTests/compiler/resources/BasicWebSite.Home.PlainView.html b/test/Microsoft.AspNet.Mvc.FunctionalTests/compiler/resources/BasicWebSite.Home.PlainView.html new file mode 100644 index 0000000000..b282c5d98f --- /dev/null +++ b/test/Microsoft.AspNet.Mvc.FunctionalTests/compiler/resources/BasicWebSite.Home.PlainView.html @@ -0,0 +1 @@ +Plain View \ No newline at end of file diff --git a/test/WebSites/BasicWebSite/Controllers/HomeController.cs b/test/WebSites/BasicWebSite/Controllers/HomeController.cs index 0cac77bb59..7d095d370d 100644 --- a/test/WebSites/BasicWebSite/Controllers/HomeController.cs +++ b/test/WebSites/BasicWebSite/Controllers/HomeController.cs @@ -8,5 +8,15 @@ namespace BasicWebSite.Controllers { return View(); } + + public IActionResult PlainView() + { + return View(); + } + + public IActionResult NoContentResult() + { + return new HttpStatusCodeResult(204); + } } } \ No newline at end of file diff --git a/test/WebSites/BasicWebSite/Views/Home/PlainView.cshtml b/test/WebSites/BasicWebSite/Views/Home/PlainView.cshtml new file mode 100644 index 0000000000..b282c5d98f --- /dev/null +++ b/test/WebSites/BasicWebSite/Views/Home/PlainView.cshtml @@ -0,0 +1 @@ +Plain View \ No newline at end of file