Main Content

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");

true, true, 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 호출은 최대 2개의 동작을 허용합니다. 더 많은 후속 동작을 지정하려면 then을 여러 번 호출하십시오. 예를 들어, 3개 동작을 지정하려면 action1.then(action2).then(action3)을 사용하십시오.

버전 내역

R2017a에 개발됨