Main Content

matlab.mock.actions.AssignOutputs 类

命名空间: matlab.mock.actions

为调用的方法或访问的属性定义返回值

描述

要指定在调用 mock 对象方法或访问 mock 对象属性时框架返回的值,请使用 AssignOutputs 类。

如果您调用的模拟方法的输出少于 AssignOutputs 指定的输出,则剩余的输出将被放弃。如果您调用的模拟方法的输出多于 AssignOutputs 指定的输出,则 MATLAB® 会提示出错。

构造

action = AssignOutputs(A1,...,An) 定义要为方法调用或属性访问返回的 mock 对象的值。AssignOutputs 构造函数接受一个或多个值 A1,...,An,这些值对应于 mock 对象方法的输出参数值或 mock 对象属性的值。

输入参数

全部展开

返回值,指定为标量、向量、矩阵或多维数组。返回值可以是任何数据类型。

示例: "mySpecifiedValue"

示例: 7,13,42

示例: [1 2 3;4 5 6]

属性

全部展开

预定义的返回值,以参数元胞数组形式返回。返回值在构造类期间指定,可以是任何数据类型。

数据类型: cell

方法

repeat重复定义返回值
thenmock 对象交互触发的动作,或者是接在设置返回值后的动作

复制语义

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

示例

全部折叠

为 quadrilateral 类创建一个 mock。

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

设置其行为。

import matlab.mock.actions.AssignOutputs;
when(withAnyInputs(behavior.sideLengths),AssignOutputs(2,2,4,4))

使用 mock。

[a,b,c,d] = mock.sideLengths

提示

  • AssignOutputs 动作定义创建实例时的输出值。要指定 mock 对象方法通过调用函数句柄来确定在调用 mock 对象方法时的输出值,请使用 Invoke 类。

备选方法

对于简单的输出定义,您可以使用 matlab.mock.TestCase 类的 assignOutputsWhen 方法。不过,在使用 AssignOutputs 动作时,会有更多功能。

版本历史记录

在 R2017a 中推出