Vac*_*ano 19 c# rhino-mocks visual-studio-2008 visual-studio rhino-mocks-3.5
当我尝试设置模拟时,我收到此错误PropertyBehavior():
System.InvalidOperationException:System.InvalidOperationException:无效调用,最后一次调用已被使用或未进行任何调用(请确保您正在调用虚拟(C#)/ Overridable(VB)方法).
我试图只使用Rhino Mocks 3.5(安排,行动,断言)
这是我的代码:
    private IAddAddressForm form;
    private AddAddressMediator mediator;
    [TestInitialize()]
    public void MyTestInitialize()
    {
        form = MockRepository.GenerateMock<IAddAddressForm>();
        mediator = new AddAddressMediator(form);
        // Make the properties work like a normal property
        Expect.Call(form.OKButtonEnabled).PropertyBehavior();
        //I tried this too.  I still get the exception
        //SetupResult.For(form.OKButtonEnabled).PropertyBehavior();
    }
    [TestMethod]
    public void TestOKButtonEnabled()
    {
        form.OKButtonEnabled = true;
        Assert.IsTrue(form.OKButtonEnabled);
    }
我知道我可以使用存根(对于我应该使用的代码),但我正在尝试学习Rhino Mocks.
最终,我希望能够确保访问多个属性的值.(关于如何检查form.FirstName访问的任何提示(即调用getter)也将不胜感激.)
如果需要,以下代码IAddressForm:
namespace AddressBook
{
    public interface IAddAddressForm
    {
        string FirstName { get; set; }
        string LastName { get; set; }
        string Address1 { get; set; }
        string State { get; set; }
        string Address2 { get; set; }
        string ZipCode { get; set; }
        string City { get; set; }
        bool OKButtonEnabled { get; set; }
    }
}
无论如何,我认为虚拟不会成为问题因为我在界面中传递,但我显然遗漏了一些东西.
Geo*_*uer 10
从未使用PropertyBehavior过,但这是您正在寻找的语法吗?
form.Stub(x=>x.OKButtonEnabled).PropertyBehavior()
Rhino Mocks现在完全通过扩展方法工作.我每次做的唯一静态电话就是MockRepository.GenerateStub.
| 归档时间: | 
 | 
| 查看次数: | 19107 次 | 
| 最近记录: |