matlab.mock.actions.ThrowException class

Пакет: matlab.mock.actions

Выдать исключение, когда вызывается метод или когда задано свойство или получен доступ

Описание

Чтобы указать, что среда выдает исключение, когда вызывается метод mock объекта или когда задано или получено свойство mock объекта, используйте ThrowException класс. Вы можете использовать это действие, чтобы ввести условия ошибки в тестируемую систему.

Конструкция

action = ThrowException выдает исключение, когда вызывается метод или задано свойство или получен доступ.

action = ThrowException(exception) задает исключение, которое выдает макет.

Входные параметры

расширить все

Исключение для среды, которая выдает вызов метода или взаимодействие свойств, заданное как скаляр MException объект.

Пример: MException('MyProduct:myID','My exception message.')

Методы

повторитьсяПовторное исключение выдачи
тогдаДействие для взаимодействия с объектом mock или действие после выдачи исключения

Копировать семантику

Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».

Примеры

свернуть все

Создайте макет для класса банковского счета.

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.

Альтернативы

Для простого определения выходов можно использовать throwExceptionWhen метод matlab.mock.TestCase класс. Тем не менее, есть больше функциональности, когда вы используете ThrowException действие.

Введенный в R2017a