类 ContentsContain
ContentsContain
方法摘要
-
__construct() public
构造函数
-
additionalFailureDescription() protected
在需要时返回附加的故障描述。
-
count() public
计算约束元素的数量。
-
evaluate() public
评估参数 $other 的约束。
-
fail() protected
为给定的比较值和测试描述抛出异常。
-
failureDescription() protected
返回故障的描述。
-
failureDescriptionInContext() protected
当此约束出现在 $operator 表达式的上下文中时,返回故障的描述。
-
matches() public
检查内容是否包含预期内容
-
reduce() protected
通过跳过退化的子表达式来减少从 $this 开始的子表达式,并返回开始非可简化子表达式的第一个后代约束。
-
toString() public
断言消息
-
toStringInContext() protected
当约束出现在 $operator 表达式的上下文中时,返回约束对象的自定义字符串表示形式。
-
valueToTypeStringFragment() protected
方法详情
__construct() ¶ public
__construct(list<string> $contents, string $output)
构造函数
参数
-
list<string>
$contents 内容
-
string
$output 输出类型
additionalFailureDescription() ¶ protected
additionalFailureDescription(mixed $other): string
在需要时返回附加的故障描述。
该函数可以被重写以提供额外的故障信息,比如差异
参数
-
mixed
$other
返回
字符串
evaluate() ¶ public
evaluate(mixed $other, string $description = '', bool $returnResult = false): ?bool
评估参数 $other 的约束。
如果 $returnResult 设置为 false(默认值),则在发生故障时会抛出异常。否则返回 null。
如果 $returnResult 设置为 true,则评估结果将作为布尔值返回:成功时为 true,失败时为 false。
参数
-
mixed
$other -
string
$description optional -
bool
$returnResult optional
返回
?bool
抛出
ExpectationFailedException
fail() ¶ protected
fail(mixed $other, string $description, ?ComparisonFailure $comparisonFailure = null): never
为给定的比较值和测试描述抛出异常。
参数
-
mixed
$other -
string
$description -
?ComparisonFailure
$comparisonFailure optional
返回
never
抛出
ExpectationFailedException
failureDescription() ¶ protected
failureDescription(mixed $other): string
返回故障的描述。
大多数情况下,故障消息的开头是 "Failed asserting that"。此方法应返回该句子的第二部分。
若要提供额外的故障信息,可以使用 additionalFailureDescription。
参数
-
mixed
$other
返回
字符串
failureDescriptionInContext() ¶ protected
failureDescriptionInContext(Operator $operator, mixed $role, mixed $other): string
当此约束出现在 $operator 表达式的上下文中时,返回故障的描述。
此方法的目的是在 LogicalNot 等运算符的上下文中提供有意义的故障描述。原生 PHPUnit 约束由 LogicalNot 开箱即用地支持,但外部开发的约束无法在此上下文中提供正确的消息。
当此方法不自行处理自定义时,应返回空字符串。
参数
-
Operator
$operator -
mixed
$role -
mixed
$other
返回
字符串
matches() ¶ public
matches(mixed $other): bool
检查内容是否包含预期内容
此方法可以被重写以实现评估算法。
参数
-
mixed
$other 预期
返回
bool
reduce() ¶ protected
reduce(): self
通过跳过退化的子表达式来减少从 $this 开始的子表达式,并返回开始非可简化子表达式的第一个后代约束。
对于终端约束和开始非可简化子表达式的运算符返回 $this,或者返回 $this 的最近后代,该后代开始非可简化子表达式。
一个约束表达式可以建模为一棵树,它具有非终端节点(运算符)和终端节点。例如
LogicalOr(运算符,非终端)
- LogicalAnd(运算符,非终端) | + IsType('int')(终端) | + GreaterThan(10)(终端)
- LogicalNot(运算符,非终端)
- IsType('array')(终端)
退化的子表达式是树的一部分,它实际上不会对它所出现的表达式的评估做出贡献。一个退化的子表达式示例是用单个操作数或嵌套的 BinaryOperators 构造的 BinaryOperator,每个 BinaryOperators 都有单个操作数。涉及退化子表达式的表达式等效于删除退化子表达式的简化表达式,例如
LogicalAnd(运算符)
- LogicalOr(退化的运算符) | + LogicalAnd(退化的运算符) | + IsType('int')(终端)
- GreaterThan(10)(终端)
等效于
LogicalAnd(运算符)
- IsType('int')(终端)
- GreaterThan(10)(终端)
因为子表达式
- LogicalOr
- LogicalAnd
- -
- LogicalAnd
是退化的。在上面的 LogicalOr 对象上调用 reduce(),以及在 LogicalAnd 上调用 reduce(),都将返回 IsType('int') 实例。
可以实现其他特定的简化,例如 LogicalNot 运算符的级联
- LogicalNot
- LogicalNot +LogicalNot
- IsTrue
- LogicalNot +LogicalNot
可以简化为
LogicalNot
- IsTrue
返回
self
toStringInContext() ¶ protected
toStringInContext(Operator $operator, mixed $role): string
当约束出现在 $operator 表达式的上下文中时,返回约束对象的自定义字符串表示形式。
此方法的目的是在 LogicalNot 等运算符的上下文中提供有意义的描述性字符串。原生 PHPUnit 约束由 LogicalNot 开箱即用地支持,但外部开发的约束无法在此上下文中提供正确的字符串。
当此方法不自行处理自定义时,应返回空字符串。
参数
-
Operator
$operator -
mixed
$role
返回
字符串
valueToTypeStringFragment() ¶ protected
valueToTypeStringFragment(mixed $value): non-empty-string
参数
-
mixed
$value
返回
非空字符串