RhinoMocks ожидает звонка с точным значением - PullRequest
1 голос
/ 19 июля 2010

Иногда Rhino.Mocks сводит меня с ума, потому что не хватает документации по темам, которые, я полагаю, относительно просты.

Что я хочу сделать, так это ожидать вызова AddContact («тест», контакт). Поэтому для второго параметра я должен использовать ограничение параметра Property.AllPropertiesMatch (contact). Но что я должен использовать для первого?

_contactManagerMock
    .Expect(m => m.AddContact(null, null))
    .Constraints(??????????, Property.AllPropertiesMatch(contact));

Что идет вместо "??????????"

1 Ответ

1 голос
/ 08 августа 2011

Я тоже искал, вот более подробный ответ.

Это пример того, как использовать AllPropertyMatch в Rhino.Mocks.Я проверял это в Rhino.Mocks 3.6.

//arrange
var contactManagerMock = MockRepository.GenerateMock<IManager>();
contactManagerMock.Expect(m => m.AddContact(
    Arg.Is("test"),
    Arg<Contact>.Matches(Property.AllPropertiesMatch(contact))))

//Act
//Perform action here that should result in the above expected call

//Assert
contactManagerMock.VerifyAllExpectations();

Это говорит о том, что ожидается вызов метода AddContact.Первый параметр должен быть строкой со значением 'test', второй должен быть объектом типа Contact, который имеет все те же свойства, что и экземпляр контакта.Вызов VerifyAllExpectations выполняет утверждение.

Дополнительная информация о сайте Rhino.Mocks .

...