我有一个控制器,如:
public ActionResult Index([ModelBinder(typeof(MyBinder))]int? MyId)
我想创建一个单元测试via Nunit+Moq+AutoFixture
以确保MyId参数用MyBinder修饰,看起来像是一个有效的单元测试,如果它被删除,代码将停止按预期工作。显然,测试实际的Custom Model Binder是单独完成的。
我预计它类似于测试属性是否使用特定属性修饰,例如下面的内容,但无法通过这种方式找到如何访问参数:
private readonly PropertyInfo _SomeProp = typeof(AddressViewModel).GetProperty("SomeProp");<br>
_SomeProp.Should().BeDecoratedWith<DisplayAttribute>();
答案 0 :(得分:0)
这很简单。
这是MVC网络应用程序:
<md-tab-group class="tab-container">
<md-tab *ngFor="let tab of tabs" label="{{tab.name}}" class="{{ tab.archive && 'item-archived' || 'item-active' }}">
...
</md-tab>
这是我们的NUnit测试:
public class MyBinder : IModelBinder
{
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
return default(int);
}
}
public class DefaultController : Controller
{
public ActionResult Index([ModelBinder(typeof(MyBinder))] int? MyId)
{
return null;
}
}