Constraint class abstract
PHPUnit\Framework\Constraint\Constraint
Implements:
Countable, PHPUnit\Framework\SelfDescribing
Defined in D:/WEBISTERS/projects/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php
Methods #
- count()
- Counts the number of constraint elements.
- evaluate()
- Evaluates the constraint for parameter $other.
- additionalFailureDescription()
- Return additional failure description where needed.
- fail()
- Throws an exception for the given compared value and test description.
- failureDescription()
- Returns the description of the failure.
- failureDescriptionInContext()
- Returns the description of the failure when this constraint appears in context of an $operator expression.
- matches()
- Evaluates the constraint for parameter $other. Returns true if the constraint is met, false otherwise.
- reduce()
- Reduces the sub-expression starting at $this by skipping degenerate sub-expression and returns first descendant constraint that starts a non-reducible sub-expression.
- toStringInContext()
- Returns a custom string representation of the constraint object when it appears in context of an $operator expression.
- valueToTypeStringFragment()
- -
count()
Counts the number of constraint elements.
evaluate()
Evaluates the constraint for parameter $other.
If $returnResult is set to false (the default), an exception is thrown
in case of a failure. null is returned otherwise.
If $returnResult is true, the result of the evaluation is returned as
a boolean value instead: true in case of success, false in case of a
failure.
- mixed $other
- string $description
- bool $returnResult
additionalFailureDescription()
Return additional failure description where needed.
The function can be overridden to provide additional failure
information like a diff
- mixed $other
fail()
Throws an exception for the given compared value and test description.
- mixed $other
- string $description
- ?\SebastianBergmann\Comparator\ComparisonFailure $comparisonFailure
failureDescription()
Returns the description of the failure.
The beginning of failure messages is "Failed asserting that" in most
cases. This method should return the second part of that sentence.
To provide additional failure information additionalFailureDescription
can be used.
- mixed $other
failureDescriptionInContext()
Returns the description of the failure when this constraint appears in context of an $operator expression.
The purpose of this method is to provide meaningful failure description
in context of operators such as LogicalNot. Native PHPUnit constraints
are supported out of the box by LogicalNot, but externally developed
ones had no way to provide correct messages in this context.
The method shall return empty string, when it does not handle
customization by itself.
- \PHPUnit\Framework\Constraint\Operator $operator
- mixed $role
- mixed $other
matches()
Evaluates the constraint for parameter $other. Returns true if the constraint is met, false otherwise.
This method can be overridden to implement the evaluation algorithm.
- mixed $other
reduce()
Reduces the sub-expression starting at $this by skipping degenerate sub-expression and returns first descendant constraint that starts a non-reducible sub-expression.
Returns $this for terminal constraints and for operators that start
non-reducible sub-expression, or the nearest descendant of $this that
starts a non-reducible sub-expression.
A constraint expression may be modelled as a tree with non-terminal
nodes (operators) and terminal nodes. For example:
LogicalOr (operator, non-terminal)
+ LogicalAnd (operator, non-terminal)
| + IsType('int') (terminal)
| + GreaterThan(10) (terminal)
+ LogicalNot (operator, non-terminal)
+ IsType('array') (terminal)
A degenerate sub-expression is a part of the tree, that effectively does
not contribute to the evaluation of the expression it appears in. An example
of degenerate sub-expression is a BinaryOperator constructed with single
operand or nested BinaryOperators, each with single operand. An
expression involving a degenerate sub-expression is equivalent to a
reduced expression with the degenerate sub-expression removed, for example
LogicalAnd (operator)
+ LogicalOr (degenerate operator)
| + LogicalAnd (degenerate operator)
| + IsType('int') (terminal)
+ GreaterThan(10) (terminal)
is equivalent to
LogicalAnd (operator)
+ IsType('int') (terminal)
+ GreaterThan(10) (terminal)
because the subexpression
+ LogicalOr
+ LogicalAnd
+ -
is degenerate. Calling reduce() on the LogicalOr object above, as well
as on LogicalAnd, shall return the IsType('int') instance.
Other specific reductions can be implemented, for example cascade of
LogicalNot operators
+ LogicalNot
+ LogicalNot
+LogicalNot
+ IsTrue
can be reduced to
LogicalNot
+ IsTrue
toStringInContext()
Returns a custom string representation of the constraint object when it appears in context of an $operator expression.
The purpose of this method is to provide meaningful descriptive string
in context of operators such as LogicalNot. Native PHPUnit constraints
are supported out of the box by LogicalNot, but externally developed
ones had no way to provide correct strings in this context.
The method shall return empty string, when it does not handle
customization by itself.
- \PHPUnit\Framework\Constraint\Operator $operator
- mixed $role
valueToTypeStringFragment()
- mixed $value
Inherited methods #
-
toString()fromPHPUnit\Framework\SelfDescribing