public function PHPUnit_Framework_Constraint_IsIdentical::evaluate in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/phpunit/phpunit/src/Framework/Constraint/IsIdentical.php \PHPUnit_Framework_Constraint_IsIdentical::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.
Parameters
mixed $other Value or object to evaluate.:
string $description Additional information about the test:
bool $returnResult Whether to return a result or throw an exception:
Return value
mixed
Throws
PHPUnit_Framework_ExpectationFailedException
Overrides PHPUnit_Framework_Constraint::evaluate
File
- vendor/
phpunit/ phpunit/ src/ Framework/ Constraint/ IsIdentical.php, line 61
Class
- PHPUnit_Framework_Constraint_IsIdentical
- Constraint that asserts that one value is identical to another.
Code
public function evaluate($other, $description = '', $returnResult = false) {
if (is_double($this->value) && is_double($other) && !is_infinite($this->value) && !is_infinite($other) && !is_nan($this->value) && !is_nan($other)) {
$success = abs($this->value - $other) < self::EPSILON;
}
else {
$success = $this->value === $other;
}
if ($returnResult) {
return $success;
}
if (!$success) {
$f = null;
// if both values are strings, make sure a diff is generated
if (is_string($this->value) && is_string($other)) {
$f = new SebastianBergmann\Comparator\ComparisonFailure($this->value, $other, $this->value, $other);
}
$this
->fail($other, $description, $f);
}
}