Как обновить свойство для параметра, используя FakeItEasy - PullRequest
1 голос
/ 15 сентября 2011

У меня есть интерфейс, который включает члена, который выглядит следующим образом:

void ExecuteSqlCommand(string procedureName, SqlParameter[] parameters);

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

КодЯ тестирую вызовы этого метода, затем проверяю значение одного из SqlParameters.Как мне использовать FakeItEasy, чтобы установить свойство Value этого параметра при вызове метода?

Я ценю, что это, вероятно, не лучшая практика для получения отдельных частей информации из базы данных, но я работаюс существующими хранимыми процедурами, некоторые из которых имеют параметры OUT.

1 Ответ

4 голосов
/ 15 сентября 2011

Как вы говорите, это, вероятно, не лучшая практика. Кроме того, я думаю, вы могли бы сделать что-то вроде этого:

A.CallTo(() => fake.ExecuteSqlCommand(A<string>._, A<SqlParameter[]>._)).Invokes(x =>
{
    x.GetArgument<SqlParameter[]>(1)[indexOfTheParameterYouWantToSet].Value = yourValue;
});
...