【发布时间】:2011-02-24 13:53:51
【问题描述】:
给出以下简化示例,使用 RhinoMocks 和 MSpec:
[Subject(typeof (LocationController))]
public class when_creating_a_location_with_invalid_model : context_for_location_controller
{
static LocationModel model = new LocationModel();
static SelectList states = new SelectList(new Dictionary<string,string> {
{ "IN", "Indiana" }, { "NY", "New York" }
});
static ActionResult result;
Establish context = () =>
{
LocationModelBuilder.Stub(x =>
x.Build(Arg<LocationModel>.Is.Equal(model))).Return(model);
}
Because of = () => result = subject.Create(model);
It should_automatically_select_a_state = () => result.Model<LocationModel>()
.States.ShouldNotBeEmpty();
}
如何在 LocationModelBuilder.Build() 的存根调用返回之前修改 model 变量中包含的对象?我想在返回 Build() 之前执行类似model.States = states 的任务。我尝试使用 Do() 处理程序,但我放弃了...
【问题讨论】:
标签: rhino-mocks mspec