Main Content

matlab.unittest.constraints.StartsWithSubstring 类

命名空间: matlab.unittest.constraints
超类: matlab.unittest.constraints.BooleanConstraint

测试值是否以指定的字符串开头

描述

matlab.unittest.constraints.StartsWithSubstring 类提供一个约束来测试值是否以指定的字符串开头。

创建对象

描述

示例

c = matlab.unittest.constraints.StartsWithSubstring(prefix) 创建一个约束来测试值是否以指定的字符串开头。以 prefix 开头的字符串标量或字符向量满足该约束。

示例

c = matlab.unittest.constraints.StartsWithSubstring(prefix,Name,Value) 使用一个或多个名称-值参量设置其他选项。例如,c = matlab.unittest.constraints.StartsWithSubstring(prefix,"IgnoringCase",true) 创建一个不区分大小写的约束。

输入参量

全部展开

预期前缀,指定为非空字符串标量或字符向量。

此参量设置 Prefix 属性。

名称-值参数

将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。

示例: c = matlab.unittest.constraints.StartsWithSubstring(prefix,IgnoringCase=true)

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: c = matlab.unittest.constraints.StartsWithSubstring(prefix,"IgnoringCase",true)

是否忽略大小写,指定为数值或逻辑值 0 (false) 或 1 (true)。默认情况下,约束区分大小写。

此参量设置 IgnoreCase 属性。

是否忽略空白,指定为数值或逻辑值 0 (false) 或 1 (true)。默认情况下,约束区分空白字符。空白字符包括空格 (' ')、换页符 ('\f')、换行符 ('\n')、回车符 ('\r')、水平制表符 ('\t') 和垂直制表符 ('\v')。

此参量设置 IgnoreWhitespace 属性。

注意

IgnoringWhitespacetrue 时,prefix 必须包含至少一个非空白字符。

属性

全部展开

预期的前缀,以字符串标量或字符向量形式返回。

此属性由 prefix 输入参量设置。

属性:

GetAccess
public
SetAccess
immutable

是否忽略大小写,以逻辑值 0 (false) 或 1 (true) 形式返回。默认情况下,约束区分大小写。

此属性由 IgnoringCase 名称-值参量设置。

属性:

GetAccess
public
SetAccess
private

是否忽略空白,以逻辑值 0 (false) 或 1 (true) 形式返回。默认情况下,约束区分空白字符。

此属性由 IgnoringWhitespace 名称-值参量设置。

属性:

GetAccess
public
SetAccess
private

示例

全部折叠

使用 StartsWithSubstring 约束测试字符串是否具有指定的前缀。

首先,导入此示例中使用的类。

import matlab.unittest.TestCase
import matlab.unittest.constraints.StartsWithSubstring

创建一个供交互测试的测试用例。

testCase = TestCase.forInteractiveUse;

指定实际值。

str = "This Is One Long Message!";

验证 str 是否以 "This" 开头。

testCase.verifyThat(str,StartsWithSubstring("This"))
Verification passed.

测试 str 是否以子字符串 "This is" 开头。测试失败,因为约束区分大小写。

testCase.verifyThat(str,StartsWithSubstring("This is"))
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    StartsWithSubstring failed.
    --> The value does not start with the supplied prefix.
    
    Actual Value:
        "This Is One Long Message!"
    Expected Prefix:
        "This is"

测试 str 是否以子字符串 "thisisone" 开头。要使测试通过,请忽略大小写和空白字符。

testCase.verifyThat(str,StartsWithSubstring("thisisone", ...
    "IgnoringCase",true,"IgnoringWhitespace",true))
Verification passed.

验证 str 不以 "Long" 开头。

testCase.verifyThat(str,~StartsWithSubstring("Long"))
Verification passed.

版本历史记录

在 R2013a 中推出