Main Content

matlab.mock.actions.ThrowException クラス

名前空間: matlab.mock.actions

メソッドが呼び出された場合、またはプロパティが設定またはアクセスされた場合に例外をスロー

説明

モック オブジェクト メソッドが呼び出された場合、またはモック オブジェクトのプロパティが設定またはアクセスされた場合にフレームワークが例外をスローするように指定するには、ThrowException クラスを使用します。このアクションは、テスト対象システムにエラー条件を投入するために使用できます。

構築

action = ThrowException は、メソッドが呼び出された場合、またはプロパティが設定またはアクセスされた場合に例外をスローします。

action = ThrowException(exception) は、モックがスローする例外を指定します。

入力引数

すべて展開する

メソッドの呼び出しやプロパティの操作が実行された場合にフレームワークがスローする例外。スカラー MException オブジェクトとして指定します。

例: MException('MyProduct:myID','My exception message.')

メソッド

repeat例外のスローの繰り返し
thenモック オブジェクトの相互作用のアクション、または例外のスローの後のアクション

コピーのセマンティクス

値。値クラスがコピー操作に与える影響については、オブジェクトのコピーを参照してください。

すべて折りたたむ

銀行口座クラスのモックを作成します。

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

動作を設定します。

import matlab.mock.actions.ThrowException
import matlab.unittest.constraints.IsLessThan
when(behavior.deposit(IsLessThan(0)),ThrowException(MException( ...
    'Account:deposit:Negative','Deposit amount must be positive.')))

モックを使用します。

mock.deposit(10)
mock.deposit(-10)
Error using matlab.mock.internal.MockContext/createMockObject/mockMethodCallback (line 382)
Deposit amount must be positive.

代替方法

単純な出力の定義には、matlab.mock.TestCase クラスの throwExceptionWhen メソッドを使用することができます。ただし、ThrowException アクションを使用すると、さらに多くの機能を使用できます。

バージョン履歴

R2017a で導入