<?php declare(strict_types=1); /* * This file is part of sebastian/comparator. * * (c) Sebastian Bergmann <sebastian@phpunit.de> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace SebastianBergmann\Comparator; use function assert; use SebastianBergmann\Exporter\Exporter; use SplObjectStorage; final class SplObjectStorageComparator extends Comparator { public function accepts(mixed $expected, mixed $actual): bool { return $expected instanceof SplObjectStorage && $actual instanceof SplObjectStorage; } /** * @throws ComparisonFailure */ public function assertEquals(mixed $expected, mixed $actual, float $delta = 0.0, bool $canonicalize = false, bool $ignoreCase = false): void { assert($expected instanceof SplObjectStorage); assert($actual instanceof SplObjectStorage); $exporter = new Exporter; foreach ($actual as $object) { if (!$expected->contains($object)) { throw new ComparisonFailure( $expected, $actual, $exporter->export($expected), $exporter->export($actual), 'Failed asserting that two objects are equal.' ); } } foreach ($expected as $object) { if (!$actual->contains($object)) { throw new ComparisonFailure( $expected, $actual, $exporter->export($expected), $exporter->export($actual), 'Failed asserting that two objects are equal.' ); } } } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
exceptions | Folder | 0755 |
|
|
ArrayComparator.php | File | 3.92 KB | 0644 |
|
Comparator.php | File | 870 B | 0644 |
|
ComparisonFailure.php | File | 1.82 KB | 0644 |
|
DOMNodeComparator.php | File | 2.39 KB | 0644 |
|
DateTimeComparator.php | File | 2.33 KB | 0644 |
|
ExceptionComparator.php | File | 1.19 KB | 0644 |
|
Factory.php | File | 3.45 KB | 0644 |
|
MockObjectComparator.php | File | 1.13 KB | 0644 |
|
NumericComparator.php | File | 2 KB | 0644 |
|
ObjectComparator.php | File | 2.9 KB | 0644 |
|
ResourceComparator.php | File | 1.17 KB | 0644 |
|
ScalarComparator.php | File | 2.84 KB | 0644 |
|
SplObjectStorageComparator.php | File | 1.79 KB | 0644 |
|
TypeComparator.php | File | 1.22 KB | 0644 |
|