私が次を持っているとしましょう:
public interface ISession
{
T Get<T>(dynamic filter); }
}
そして、私がテストしたい次のコードがあります:
var user1 = session.Get<User>(new {Name = "test 1"});
var user2 = session.Get<User>(new {Name = "test 2"});
この呼び出しをどのようにモックしますか?
Moqを使用して、私はこれを行うのに疲れました:
var sessionMock = new Mock<ISession>();
sessionMock.Setup(x => x.Get<User>(new {Name = "test 1")).Returns(new User{Id = 1});
sessionMock.Setup(x => x.Get<User>(new {Name = "test 1")).Returns(new User{Id = 2});
そして、それはうまくいきませんでした。返される結果はnullです
また、RhinoMocksで次のことを試みました。
var session = MockRepository.GenerateStub<ISession>();
session.Stub(x => x.Get<User>(new {Name = "test 1"})).Return(new User{Id=1});
運もありません。再びヌル。
では、これをどのように行うのでしょうか?
ありがとう、