Main Content

matlab.mock.actions.StoreValue 类

包: matlab.mock.actions

存储属性值

说明

StoreValue 动作指定在设置属性时,将存储指定的值。

默认情况下,当您在严格 mock 中设置属性值时,MATLAB® 会引发异常。要指定该框架存储 mock 对象属性的值,请使用 StoreValue 类。

构造

action = StoreValue 将存储属性值。

方法

repeat重复存储属性值
thenmock 对象交互触发的动作,或者是接在存储属性值后的动作

复制语义

值。要了解值类如何影响复制操作,请参阅复制对象

示例

全部折叠

创建一个严格 mock。默认情况下,属性交互会引发异常。

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。

mock.PropA = 1;

使用 mock。

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

备选方法

要通过简单指令存储属性值,您可以使用 matlab.mock.TestCase 类的 storeValueWhen 方法。不过,在使用 StoreValue 动作时,会有更多功能。

版本历史记录

在 R2017a 中推出