Main Content

이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

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에 개발됨