说我是否在(NMock)中模拟了以下界面。我怎么能检查那封email.Subject ='xyz'?
目前正在做类似
的事情IEmailService s = mocks.NewMock<IEmailService>();
Expect.Once.On(s).Method("Send").With(?????)
s.Send(new Email { Subject = 'rarr' });
mocks.Verify...();
interface EmailService { void SendEmail(Email email); }
答案 0 :(得分:0)
你想检查一下里面的主题吗?当你编写单元测试用例时,这对我来说很奇怪,所以没有必要以这种方式验证你自己的测试用例,对吗?
答案 1 :(得分:0)
你可以像这样使用Has.Property
matcher:
IEmailService s = mocks.NewMock<IEmailService>();
Expect.Once.On(s).Method("Send").
With(Has.Property("Subject", Is.EqualTo("rarr")));
s.Send(new Email { Subject = 'rarr' });
mocks.Verify...();
或者您可以编写自定义匹配器来验证参数是Email
类型,并且其Subject
属性具有正确的值。