assignOutputsWhen

Класс: matlab.mock.TestCase
Пакет: matlab.mock

Задайте возвращаемые значения для доступа к свойству или вызова метода

Синтаксис

assignOutputsWhen(testcase,behavior,A1,...,An)

Описание

assignOutputsWhen(testcase,behavior,A1,...,An) задает значения, чтобы возвратиться для названного метода, или свойство получило доступ.

Входные параметры

развернуть все

Экземпляр теста, заданного как matlab.mock.TestCase объект.

Поведение макета, заданного как matlab.mock.MethodCallBehavior или matlab.mock.PropertyGetBehavior экземпляр. Создать экземпляр matlab.mock.MethodCallBehavior, вызовите метод объекта поведения. Создать экземпляр matlab.mock.PropertyGetBehavior, вызовите get метод на свойстве объекта поведения.

Пример: get(behavior.MyMockedProperty)

Пример: withExactInputs(behavior.myMockedMethod)

Заданные возвращаемые значения, заданные как скаляры, векторы, матрицы или многомерные массивы. Возвращаемые значения могут быть любым типом данных и относиться к свойству или методу, заданному behavior.

Пример: "mySpecifiedValue"

Пример: 7,13,42

Пример: [1 2 3;4 5 6]

Примеры

развернуть все

Присвоение Выходных параметров.

testCase = matlab.mock.TestCase.forInteractiveUse;
[mock, behavior] = testCase.createMock('AddedProperties',"PropertyFoo", ...
    'AddedMethods',"methodBar");
testCase.assignOutputsWhen(get(behavior.PropertyFoo), 'abc');
testCase.assignOutputsWhen(withExactInputs(behavior.methodBar), 1, 2, 3);

% Carry out actions
mock.PropertyFoo
[out1,out2,out3] = mock.methodBar

Альтернативы

Используя assignOutputsWhen метод функционально эквивалентен использованию matlab.mock.actions.AssignOutputs действие с when метод MethodCallBehavior или PropertyGetBehavior класс. Например, следующие блоки кода функционально эквивалентны.

% Using the assignOutputsWhen method
testCase.assignOutputsWhen(get(behavior.PropertyFoo),'abc');
testCase.assignOutputsWhen(withExactInputs(behavior.methodBar),1,2,3);

% Using the AssignOutputs action with the when function
import matlab.mock.actions.AssignOutputs;
when(get(behavior.PropertyFoo),AssignOutputs('abc'));
when(withExactInputs(behavior.methodBar),AssignOutputs(1,2,3));
Однако существует больше функциональности, когда вы используете AssignOutputs действие. Например, можно задать различное последующее поведение для того же дразнившего объектного взаимодействия.

Смотрите также

Введенный в R2017a

Для просмотра документации необходимо авторизоваться на сайте