rhino mocks:如何构建一个假套接字?

2024-04-18

我尝试使用以下代码构建一个假套接字进行测试:

var socket = MockRepository.GenerateStub<Socket>(
    AddressFamily.InterNetwork, 
    SocketType.Stream, ProtocolType.IP
);
socket.Stub(v => v.RemoteEndPoint).PropertyBehavior().Return(
    new IPEndPoint(IPAddress.Parse("127.0.0.1"), 12345)
);

但是,尝试为只读属性创建存根时出现以下异常:

无效调用,已使用最后一次调用或未进行任何调用(确保您正在调用虚拟 (C#)/可重写 (VB) 方法)。

谁能帮我找出哪里出了问题吗?

Thanks


我的错误在哪里?

该错误消息似乎非常不言自明。您只能模拟虚拟方法。在你的情况下,你试图嘲笑的吸气剂RemoteEndPoint http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.remoteendpoint.aspx属性,但该属性不是虚拟的 => 无法模拟。为抽象类/接口创建模拟也是有意义的。在你的情况下,你试图模拟 Socket 类,这是不可能的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

rhino mocks:如何构建一个假套接字? 的相关文章

随机推荐