затем

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

Синтаксис

then(action1)
then(action1,action2)

Описание

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

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

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

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

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

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

Примеры

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

Создайте макет для класса, который представляет 6-стороннее, умирают, включая дразнивший метод roll.

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

Настройте поведение для метода roll. Возвратитесь 0 в первый раз, когда это запускается. На последующих выполнениях вызовите функцию randi, чтобы возвратить случайное целое число между 1 и 6.

import matlab.mock.actions.AssignOutputs
import matlab.mock.actions.Invoke
when(withExactInputs(behavior.roll),...
    then(AssignOutputs(0),...
        then(Invoke(@(~)randi(6)))))

Вызовите дразнивший метод roll три раза.

val = mock.roll
val = 0
val = mock.roll
val = 5
val = mock.roll
val = 6

Советы

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

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

Введенный в R2018b