public override Task ExecuteResultAsync(ActionContext context) { if (StatusCode.HasValue) { context.HttpContext.Response.StatusCode = StatusCode.Value; } var json = new JsonResult(this); return(json.ExecuteResultAsync(context)); }
public async Task ExecuteAsync_WritesJsonContent() { // Arrange var value = new { foo = "abcd" }; var expected = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(value)); var context = GetActionContext(); var result = new JsonResult(value); // Act await result.ExecuteResultAsync(context); // Assert var written = GetWrittenBytes(context.HttpContext); Assert.Equal(expected, written); Assert.Equal("application/json; charset=utf-8", context.HttpContext.Response.ContentType); }
public async Task ExecuteAsync_WritesJsonContent() { // Arrange var value = new { foo = "abcd" }; var expected = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(value)); var context = GetActionContext(); var result = new JsonResult(value); // Act await result.ExecuteResultAsync(context); // Assert var written = GetWrittenBytes(context.HttpContext); Assert.Equal(expected, written); Assert.Equal("application/json; charset=utf-8", context.HttpContext.Response.ContentType); }