then

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

Действие для взаимодействия фиктивного объекта или действие, последующее за определением возвращаемых значений

Синтаксис

then(action1)
then(action1,action2)

Описание

then(action1) задает действие для взаимодействий фиктивного объекта.

then(action1,action2) задает действие и последующее действие для взаимодействий фиктивного объекта.

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

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

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

Пример: action1 = AssignOutputs(true)

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

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

Пример: action2 = DoNothing

Пример: action2 = ThrowException

Примеры

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

Создайте макет для класса банковского счета.

testCase = matlab.mock.TestCase.forInteractiveUse;
[mock,behavior] = testCase.createMock('AddedMethods',"isOpen");

Настройте поведение, чтобы возвратить trueTRUE, и затем false.

import matlab.mock.actions.AssignOutputs;
when(withExactInputs(behavior.isOpen), ...
    AssignOutputs(true).then(AssignOutputs(true)).then(AssignOutputs(false)))

Используйте макет.

isAccountOpen = mock.isOpen
isAccountOpen = logical
   1

isAccountOpen = mock.isOpen
isAccountOpen = logical
   1

isAccountOpen = mock.isOpen
isAccountOpen = logical
   0

Советы

  • Каждый вызов then принимает до двух действий. Чтобы задать больше последующих действий, используйте множественные вызовы then. Например, чтобы задать три действия, используйте action1.then(action2).then(action3).

Введенный в R2017a