Помогите мне избежать этого NullReferenceException (используя Rhino Mocks) - PullRequest
2 голосов
/ 16 июля 2010

Я сейчас пытаюсь заставить работать один из моих модульных тестов, но есть одна вещь на пути.У меня есть класс AccountingScheduleLookup, к которому прикреплено поле ID, доступное только для чтения.Когда я пытаюсь смоделировать вызов метода, который использует это поле идентификатора, это вызывает прекрасное исключение NullReferenceException для этой конкретной строки кода.Это означает, что либо ID не был присвоен ему, либо объект не был создан.

Когда я включил базовую инстанцию, это все равно бросило мне исключение.Есть идеи как обойти это?

Вот пример кода (для чего это стоит)

AccountingScheduleLookup = new AccountingSchedule { Description = "Will this work?" }
var calendarPeriods = dal.GetObjects<AccountingScheduleDetail>(
     Where.Property("AccountingScheduleID").Is(AccountingScheduleLookup.AccountingScheduleID));

1 Ответ

1 голос
/ 17 июля 2010

Типичное использование насмешек на носорога подразумевает установку ожидания, что при обращении к этому свойству оно вернет определенное значение.

Вот краткий справочник по последней версии насмешек на носорога:

http://www.ayende.com/wiki/GetFile.aspx?File=Rhino+Mocks+3.3+Quick+Reference.pdf

Вот раздел, который, вероятно, будет иметь отношение к вам:

Получатели недвижимости

Expect.Call(foo.Name).Return("Bob");
...