メインコンテンツ

repeat

クラス: matlab.mock.actions.Invoke
名前空間: matlab.mock.actions

関数ハンドルの呼び出しの繰り返し

構文

repeat(action,n)

説明

repeat(action,n) は同じアクションを n 回繰り返します。入力引数を任意の順序で指定できます。つまり、repeat(action,n) および repeat(n,action) はどちらもアクションを n 回繰り返します。

入力引数

すべて展開する

定義済みのアクション。matlab.mock.actions.Invoke のインスタンスとして指定します。

例: action = Invoke(@isempty)

例: action = Invoke(@(~)randi(10))

アクションを繰り返す回数。整数として指定します。

例: 5

すべて展開する

12 面サイコロを表し、モックされた roll メソッドを含むクラスのモックを作成します。

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

関数 randi からの値を 2 回返してから 0 を返すよう、roll メソッドの動作を設定します。

import matlab.mock.actions.AssignOutputs
import matlab.mock.actions.Invoke

when(withExactInputs(behavior.roll), ...
    Invoke(@(~)randi(12)).repeat(2).then(AssignOutputs(0)))

モックされた roll メソッドを 4 回呼び出します。

val = mock.roll
val = 10
val = mock.roll
val = 11
val = mock.roll
val = 0
val = mock.roll
val = 0

バージョン履歴

R2018b で導入