Remove Controller.ViewEngine property+unit tests and simplify the Content method

This commit is contained in:
Youngjune Hong 2015-01-15 11:27:31 -08:00
parent b02dea98e7
commit 0d2a819255
2 changed files with 2 additions and 90 deletions

View File

@ -19,7 +19,6 @@ namespace Microsoft.AspNet.Mvc
public class Controller : IActionFilter, IAsyncActionFilter, IOrderedFilter, IDisposable public class Controller : IActionFilter, IAsyncActionFilter, IOrderedFilter, IDisposable
{ {
private DynamicViewData _viewBag; private DynamicViewData _viewBag;
private IViewEngine _viewEngine;
public IServiceProvider Resolver public IServiceProvider Resolver
{ {
@ -61,25 +60,6 @@ namespace Microsoft.AspNet.Mvc
} }
} }
public IViewEngine ViewEngine
{
get
{
if (_viewEngine == null)
{
_viewEngine =
ActionContext?.HttpContext?.RequestServices.GetRequiredService<ICompositeViewEngine>();
}
return _viewEngine;
}
set
{
_viewEngine = value;
}
}
public ModelStateDictionary ModelState public ModelStateDictionary ModelState
{ {
get get
@ -186,7 +166,6 @@ namespace Microsoft.AspNet.Mvc
{ {
ViewName = viewName, ViewName = viewName,
ViewData = ViewData, ViewData = ViewData,
ViewEngine = _viewEngine,
}; };
} }
@ -284,18 +263,10 @@ namespace Microsoft.AspNet.Mvc
var result = new ContentResult var result = new ContentResult
{ {
Content = content, Content = content,
ContentEncoding = contentEncoding,
ContentType = contentType
}; };
if (contentType != null)
{
result.ContentType = contentType;
}
if (contentEncoding != null)
{
result.ContentEncoding = contentEncoding;
}
return result; return result;
} }

View File

@ -1238,65 +1238,6 @@ namespace Microsoft.AspNet.Mvc.Test
Assert.True(controller.DisposeCalled); Assert.True(controller.DisposeCalled);
} }
[Fact]
public void ControllerExpose_ViewEngine()
{
// Arrange
var controller = new Controller();
var viewEngine = Mock.Of<ICompositeViewEngine>();
var serviceProvider = new Mock<IServiceProvider>();
serviceProvider
.Setup(s => s.GetService(It.Is<Type>(t => t == typeof(ICompositeViewEngine))))
.Returns(viewEngine);
var httpContext = new Mock<HttpContext>();
httpContext
.Setup(c => c.RequestServices)
.Returns(serviceProvider.Object);
controller.ActionContext = new ActionContext(httpContext.Object,
Mock.Of<RouteData>(),
new ActionDescriptor());
// Act
var innerViewEngine = controller.ViewEngine;
// Assert
Assert.Same(viewEngine, innerViewEngine);
}
[Fact]
public void ControllerView_UsesControllerViewEngine()
{
// Arrange
var controller = new Controller();
var viewEngine = Mock.Of<ICompositeViewEngine>();
var serviceProvider = new Mock<IServiceProvider>();
serviceProvider
.Setup(s => s.GetService(It.Is<Type>(t => t == typeof(ICompositeViewEngine))))
.Returns(viewEngine);
var httpContext = new Mock<HttpContext>();
httpContext
.Setup(c => c.RequestServices)
.Returns(serviceProvider.Object);
controller.ActionContext = new ActionContext(httpContext.Object,
Mock.Of<RouteData>(),
new ActionDescriptor());
// Act
var unsused = controller.ViewEngine;
var result = controller.View();
// Assert
Assert.Same(viewEngine, result.ViewEngine);
}
private static Controller GetController(IModelBinder binder, IValueProvider provider) private static Controller GetController(IModelBinder binder, IValueProvider provider)
{ {
var metadataProvider = new DataAnnotationsModelMetadataProvider(); var metadataProvider = new DataAnnotationsModelMetadataProvider();