when

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

Задайте поведение метода фиктивного объекта

Синтаксис

when(behavior,action)

Описание

when(behavior,action) задает меры, которые принимает метод фиктивного объекта, когда это вызвано входными параметрами, заданными behavior.

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

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

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

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

Заданное действие в виде экземпляра matlab.mock.actions.AssignOutputs, matlab.mock.actions.Invoke, matlab.mock.actions.DoNothing, или matlab.mock.actions.ThrowException.

Пример: AssignOutputs(7,13,42)

Пример: ThrowException(MException('Account:deposit:Negative','Deposit amount must be positive.'))

Примеры

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

Создайте макет для треугольного класса. Макет имеет один метод, sideLengths.

import matlab.mock.actions.AssignOutputs;
testCase = matlab.mock.TestCase.forInteractiveUse;
[mock,behavior] = testCase.createMock('AddedMethods',"sideLengths");

Настройте поведение. Независимо от входных параметров к sideLengths метод, макет возвращает значения 2, 3, и 4.

when(withAnyInputs(behavior.sideLengths),AssignOutputs(2,3,4))

Вызовите sideLengths метод фиктивного объекта.

[a,b,c] = mock.sideLengths
a = 2
b = 3
c = 4

Вызовите sideLengths метод снова с помощью различных входных параметров и только двух выходных параметров.

[a,b] = mock.sideLengths(13,"inputText")
a = 2
b = 3
Введенный в R2017a