Code: Select all
public sealed class AjaxChildActionAttribute : ActionMethodSelectorAttribute
{
public override bool IsValidForRequest(ControllerContext controllerContext, System.Reflection.MethodInfo methodInfo)
{
return controllerContext.RequestContext.HttpContext.Request.IsAjaxRequest() || controllerContext.IsChildAction;
}
}
Code: Select all
// Arrange
var mockControllerContext = new Mock();
mockControllerContext.Setup(c => c.RequestContext.HttpContext.Request.IsAjaxRequest()).Returns(true);
mockControllerContext.Setup(c => c.IsChildAction).Returns(true);
var _sut = new AjaxChildActionOnlyAttribute();
// Act
var result = _sut.IsValidForRequest(mockControllerContext.Object, null);
// Assert
Assert.True(result);