Main Content

repeat

类: matlab.mock.actions.StoreValue
命名空间: matlab.mock.actions

重复存储属性值

语法

repeat(action,n)

说明

repeat(action,n) 重复同样的动作 n 次。您可以采用任意顺序指定输入参量。也就是说,repeat(action,n)repeat(n,action) 都重复动作 n 次。

输入参数

全部展开

定义的动作,指定为 matlab.mock.actions.StoreValue 的实例。

重复动作的次数,指定为整数。

示例: 5

示例

全部展开

为 bank account 类创建一个 mock。

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

指定其行为。允许 IsOpen 属性设置两次,然后引发异常。

import matlab.mock.actions.StoreValue
import matlab.mock.actions.ThrowException
when(set(behavior.IsOpen),StoreValue().repeat(2).then(ThrowException( ...
    MException('Account:setValue:tooMany','Value set too many times.'))))

使用 mock。

for i = 1:3
    mock.IsOpen = i
end
mock = 

  Mock with properties:

    IsOpen: 1


mock = 

  Mock with properties:

    IsOpen: 2

Error using matlab.mock.internal.MockContext/createMockObject/mockPropertySetCallback (line 429)
Value set too many times.

版本历史记录

在 R2017a 中推出