Как смоделировать установщик свойств в PartialMock, используя Rhino Mocks - PullRequest
0 голосов
/ 05 мая 2010

Я бы хотел предотвратить вызов реального установочного кода для свойства в частичном классе.

Какой синтаксис для этого?

Мой текущий код, чтобы заглушить геттер (я бы тоже хотел заглушить сеттер):

var user = MockRepository.GeneratePartialMock<User>(ctor params...);
user.MyProperty = "blah";

Как то так?

user.Stub(u => u.MyProperty).Do(null);

1 Ответ

1 голос
/ 07 мая 2010

Вот пример 3.5, который делает то, что вам нужно (я думаю, что ваш синтаксис выше 3.1 или 3.2).

Во-первых, у меня есть делегат для вызова установщика свойства:

private delegate void NoAction(string value);

Затем используйте Expect.Call с «SetPropertyAndIgnoreArgument» в дополнение к «Do»:

var repository = new MockRepository();
var sample = repository.PartialMock<Sample>();

Expect.Call(sample.MyProperty).SetPropertyAndIgnoreArgument().Do(new NoAction(DoNothing));
sample.Replay();

sample.DoSomething();

repository.VerifyAll();
...