犀牛制品 - 验证属性设置当属性没有get
-
22-08-2019 - |
题
如果您有一个属性:
public class Fred
{
public string UserName
{
set
{
userName=value;
}
}
}
你怎么用犀牛嘲笑检查
fred= new Fred();
fred.UserName="Jim";
被调用。
Expect.Call(mockFred.UserName).SetPropertyWithArgument("Jim");
不能编译。
解决方案
您应该只能够做一个验证所有的属性集
[TestClass]
public class FredTests
{
[TestMethod]
public void TestFred()
{
var mocker = new MockRepository();
var fredMock = mocker.DynamicMock<IFred>();
fredMock.UserName = "Name";
// the last call is actually to the set method of username
LastCall.IgnoreArguments();
mocker.ReplayAll();
fredMock.UserName = "Some Test that does this.";
mocker.VerifyAll();
}
}
public interface IFred
{
string UserName { set; }
}
其他提示
public interface IFred
{
string UserName { set; }
}
[Test]
public void TestMethod1()
{
IFred fred = MockRepository.GenerateMock<IFred>();
fred.UserName = "Jim";
fred.AssertWasCalled(x => x.UserName = "Jim");
}
不隶属于 StackOverflow