Dav*_*d J 14 .net c# moles microsoft-fakes
当我开始使用Microsoft Fakes时,我很高兴开始填补一些.NET方法.我一直相信我能够使用任何.NET方法,静态或不是:http://msdn.microsoft.com/en-us/library/hh549176.aspx.
但是,我一直试图在TcpClient中填充一些方法,只创建了存根,这对我没有好处,因为我希望能够改变一些方法来返回我自己的数据,而不是依赖于直播TcpClient给我数据.
如果还有其他超越Microsoft Fakes的方法,我愿意接受有关如何执行此操作的任何建议.
编辑:添加代码来演示问题
[TestMethod]
public void CommunicationTest()
{
var stubbedTcpClient = new System.Net.Sockets.Fakes.StubTcpClient
{
};
//No such ShimTcpClient exists
var shimmedTcpClient = new System.Net.Sockets.Fakes.ShimTcpClient
{
};
}
Run Code Online (Sandbox Code Playgroud)
Dav*_*d J 10
解决方案是在System.fakes文件中添加我想要显式填充的类.这就是我现在的样子:
<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/">
<Assembly Name="System" Version="4.0.0.0"/>
<ShimGeneration>
<Clear/>
<Add FullName="System.Net.Sockets.TcpClient"/>
<Remove Obsolete="1"/>
</ShimGeneration>
</Fakes>
Run Code Online (Sandbox Code Playgroud)
这Remove Obsolete="1"
是为了阻止Shim生成代码在尝试填充[Obsolete]代码时抛出错误.
归档时间: |
|
查看次数: |
6318 次 |
最近记录: |