class ComparisonFailureBuilder
@no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
@internal This class is not covered by the backward compatibility promise for PHPUnit
Hierarchy
- class \PHPUnit\Event\Code\ComparisonFailureBuilder
Expanded class hierarchy of ComparisonFailureBuilder
File
-
vendor/
phpunit/ phpunit/ src/ Event/ Value/ ComparisonFailureBuilder.php, line 23
Namespace
PHPUnit\Event\CodeView source
final class ComparisonFailureBuilder {
public static function from(Throwable $t) : ?ComparisonFailure {
if (!$t instanceof ExpectationFailedException) {
return null;
}
if (!$t->getComparisonFailure()) {
return null;
}
$expectedAsString = $t->getComparisonFailure()
->getExpectedAsString();
if (empty($expectedAsString)) {
$expectedAsString = self::mapScalarValueToString($t->getComparisonFailure()
->getExpected());
}
$actualAsString = $t->getComparisonFailure()
->getActualAsString();
if (empty($actualAsString)) {
$actualAsString = self::mapScalarValueToString($t->getComparisonFailure()
->getActual());
}
return new ComparisonFailure($expectedAsString, $actualAsString, $t->getComparisonFailure()
->getDiff());
}
private static function mapScalarValueToString(mixed $value) : string {
if ($value === null) {
return 'null';
}
if (is_bool($value)) {
return $value ? 'true' : 'false';
}
if (is_scalar($value)) {
return print_r($value, true);
}
return '';
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
ComparisonFailureBuilder::from | public static | function | |
ComparisonFailureBuilder::mapScalarValueToString | private static | function |