Stubbing a read only property with Rhino Mocks

与世无争的帅哥 提交于 2019-12-21 07:06:06

问题


I have a class with a private set property that I want to stub out with rhino mocks. When I try to do this, though, it gives me a compile time error saying I can't set a read only property. I'm new to using Rhino Mocks so I must be missing something here...

public Interface IFoo
{
    int Quantity { get; }
}

[TestMethod]
public void SomeTest()
{
    IFoo foo = MockRepository.GenerateStub<IFoo>();
    foo.Quantity = 5;

    //Asserts and such
}

回答1:


Use:

foo.Stub (f => f.Quantity).Return (5);

See http://ayende.com/Wiki/Rhino+Mocks+3.5.ashx#UsingExpecttosetupproperties

You can also use:

foo.Expect(f => f.Quantity).Return (5);



回答2:


You can just do:

foo.Stub(f => f.Quantity).Return(5);
//asserts


来源:https://stackoverflow.com/questions/2090191/stubbing-a-read-only-property-with-rhino-mocks

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!