Main Content

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

withNargout

클래스: matlab.mock.MethodCallBehavior
패키지: matlab.mock

정의된 출력 인수 개수로 모의 객체 메서드 호출 지정

구문

withNargout(n,behavior)

설명

withNargout(n,behavior)는 정의된 출력 인수 개수로 모의 객체 메서드 호출을 지정합니다.

입력 인수

모두 확장

모의 객체 메서드의 출력값 개수로, 정수로 지정됩니다.

예: 3

모의 객체의 동작으로, matlab.mock.MethodCallBehavior 인스턴스로 지정됩니다. matlab.mock.MethodCallBehavior의 인스턴스를 만들려면 해당 동작 객체의 메서드를 호출하십시오.

예: myMockBehavior.myMockedMethod

예제

모두 확장

삼각형 클래스에 대한 모의 객체를 만듭니다.

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

동작을 설정합니다. sideLengths 메서드가 이 객체만을 입력값으로 하고 출력값을 한 개로 취해 호출되는 경우 세 개의 값으로 구성된 배열을 반환합니다. 이 객체만을 입력값으로 하고 출력값을 세 개로 취해 호출되는 경우 세 개의 값을 반환합니다. 그렇지 않으면 디폴트 값인 빈 배열을 반환합니다.

import matlab.mock.actions.AssignOutputs
when(withNargout(1,withExactInputs(behavior.sideLengths)), ...
    AssignOutputs([1 2 3]))
when(withNargout(3,withExactInputs(behavior.sideLengths)), ...
    AssignOutputs(1,2,3))

이 객체만을 입력값으로 하고 출력값을 하나로 취해 sideLengths 메서드를 호출합니다.

len = mockQuad.sideLengths
len = 1×3

     1     2     3

sideLengths 메서드가 한 개의 출력 인수로 한 번 이상 호출되었는지 확인합니다.

import matlab.mock.constraints.WasCalled
testCase.verifyThat(withNargout(1, ...
    withExactInputs(behavior.sideLengths)),WasCalled)
Verification passed.

sideLengths 메서드가 세 개의 출력 인수로 호출되지 않았음을 확인합니다.

testCase.verifyThat(withNargout(3, ...
    withExactInputs(behavior.sideLengths)),~WasCalled)
Verification passed.
R2017a에 개발됨