NUnit检查控制器/操作的可用性ActionFilterAttribute

时间:2013-05-26 18:49:14

标签: asp.net-mvc nunit actionfilterattribute

如何在ASP.NET MVC3中检查控制器/操作上ActionFilterAttribute的可用性?

我正在使用NUnit。

1 个答案:

答案 0 :(得分:1)

你可以使用反射:

// arrange
Expression<Action<HomeController>> expression = (HomeController c) => c.Index();
var mc = expression.Body as MethodCallExpression;

// act
var actual = mc.Method.GetCustomAttributes(typeof(MyActionFilterAttribute), false);

// assert
Assert.IsTrue(actual.Any());

验证MyActionFilterAttribiute是否已用于装饰Home Controller上的Index操作:

public class HomeController: Controller
{
    [MyActionFilter]
    public ActionResult Index()
    {
        ...
    }
}