фиктивная функция с переменным числом агентов с использованием NSubstitute - PullRequest
0 голосов
/ 31 января 2019

У меня есть интерфейс со следующим методом:

bool ProcessActions(int actionTypeId, out List<int> ints, params object[] actionParameters);

Теперь, как можно смоделировать этот метод, чтобы вернуть значение с помощью NSubstitute?Вот что я попробовал:

    this.actionOperationsMock.ProcessActions(Arg.Any<int>(), out List<int> _, Arg.Any<int>(), Arg.Any<int>(), Arg.Any<int>(), Arg.Any<DateTime>(), Arg.Any<DateTime>(), Arg.Any<string>()).Returns(
        x =>
            {
                x[1] = null;
                return true;
            });

Я пытался смоделировать это только с первыми двумя параметрами, но в моих тестах этот метод возвращал false.

1 Ответ

0 голосов
/ 31 января 2019

Я бы посоветовал использовать ReturnsForAnyArgs, так как вы собираетесь имитировать каждый из параметров, и объект params [] в этом случае не нужно имитировать, поскольку params допускает 0 аргументов.

mock.ProcessActions(Arg.Any<int>(), out Arg.Any<List<int>>()).ReturnsForAnyArgs(
            x =>
            {
                x[1] = null;
                return true;
            });

        var res = mock.ProcessActions(1, out var list, 1, 1, 1 , DateTime.Now, DateTime.Now.AddHours(2), "");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...