exponenta event banner

matlab.mock.actions.SteyValue класс

Пакет: matlab.mock.actions

Сохранить значение свойства

Описание

StoreValue указывает, что указанное значение сохраняется при задании свойства.

По умолчанию при установке значений свойств в строгих макетах MATLAB ® создает исключение. Чтобы указать, что фреймворк сохраняет значение свойства имитационного объекта, используйте StoreValue класс.

Строительство

action = StoreValue сохраняет значение свойства.

Методы

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

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

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

Примеры

свернуть все

Создайте строгий макет. По умолчанию взаимодействия свойств вызывают исключения.

testCase = matlab.mock.TestCase.forInteractiveUse;
properties = ["PropA" "PropB" "PropC"];
[mock, behavior] = testCase.createMock('AddedProperties',properties,"Strict",true);

Включить доступ аппарата к PropA.

import matlab.mock.actions.StoreValue
when(set(behavior.PropA),StoreValue)

Используйте макет.

mock.PropA = 1;

Используйте макет.

mock.PropB = 2;
Assertion failed.
    ----------------
    Test Diagnostic:
    ----------------
    Unexpected set of strict mock property 'PropB'.
Assertion failed.

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

Для простой директивы для хранения значений свойств можно использовать storeValueWhen способ matlab.mock.TestCase класс. Однако при использовании StoreValue действия.

Представлен в R2017a