Main Content

when

クラス: matlab.mock.MethodCallBehavior
名前空間: matlab.mock

モック オブジェクト メソッドの動作を指定

構文

when(behavior,action)

説明

when(behavior,action) は、モック オブジェクト メソッドが behavior で定義された入力により呼び出された場合に実行するアクションを指定します。

入力引数

すべて展開する

モックの動作。matlab.mock.MethodCallBehavior インスタンスとして指定します。matlab.mock.MethodCallBehavior のインスタンスを作成するには、behavior オブジェクトのメソッドを呼び出します。

例: withExactInputs(myMockBehavior.myMockedMethod)

定義済みのアクション。matlab.mock.actions.AssignOutputsmatlab.mock.actions.Invokematlab.mock.actions.DoNothing、または matlab.mock.actions.ThrowException のインスタンスとして指定します。

例: AssignOutputs(7,13,42)

例: ThrowException(MException('Account:deposit:Negative','Deposit amount must be positive.'))

すべて展開する

三角形クラスのモックを作成します。このモックには 1 つのメソッド (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

複数の入力と 2 つだけの出力を使用して、sideLengths メソッドを再度呼び出します。

[a,b] = mock.sideLengths(13,"inputText")
a = 2
b = 3

バージョン履歴

R2017a で導入