Als ich anfing, Microsoft Fakes zu verwenden, war ich aufgeregt, einige .NET-Methoden zu shimmen. Ich wurde davon überzeugt, dass ich in der Lage wäre, jede .NET-Methode, egal ob statisch oder nicht, zu shimpfen: http://msdn.microsoft.com/en-us/library/hh549176.aspx.Shims werden nicht für .NET-Methoden generiert
Allerdings habe ich versucht, einige der Methoden in TcpClient Shim und nur Stubs erstellt werden, was mir nicht gut tut, da ich in der Lage sein, einige der Methoden zu ändern, meine eigenen Daten zurückgeben statt abhängig von einem Live-TcpClient, um mir Daten zu geben.
Ich bin offen für alle Vorschläge, wie dies zu tun ist, wenn es einen anderen Weg als Microsoft Fakes gibt.
EDIT: Code Hinzufügen des Problems
[TestMethod]
public void CommunicationTest()
{
var stubbedTcpClient = new System.Net.Sockets.Fakes.StubTcpClient
{
};
//No such ShimTcpClient exists
var shimmedTcpClient = new System.Net.Sockets.Fakes.ShimTcpClient
{
};
}
Können Sie Ihren Code teilen? Oder zumindest genug, um das Problem zu demonstrieren? –
Ich habe den TcpClient Shim Code hinzugefügt, den ich zu generieren hoffe –
Welche Methode versuchen Sie zu shim? Wenn es virtuell ist, können Sie [NSubstitute] (http://nsubstitute.github.io/) verwenden, wenn Sie nicht mit Fälschungen arbeiten. –