1<?php 2/* 3 * This file is part of the Comparator package. 4 * 5 * (c) Sebastian Bergmann <sebastian@phpunit.de> 6 * 7 * For the full copyright and license information, please view the LICENSE 8 * file that was distributed with this source code. 9 */ 10 11namespace SebastianBergmann\Comparator; 12 13/** 14 * Compares resources for equality. 15 */ 16class ResourceComparator extends Comparator 17{ 18 /** 19 * Returns whether the comparator can compare two values. 20 * 21 * @param mixed $expected The first value to compare 22 * @param mixed $actual The second value to compare 23 * @return bool 24 */ 25 public function accepts($expected, $actual) 26 { 27 return is_resource($expected) && is_resource($actual); 28 } 29 30 /** 31 * Asserts that two values are equal. 32 * 33 * @param mixed $expected First value to compare 34 * @param mixed $actual Second value to compare 35 * @param float $delta Allowed numerical distance between two values to consider them equal 36 * @param bool $canonicalize Arrays are sorted before comparison when set to true 37 * @param bool $ignoreCase Case is ignored when set to true 38 * 39 * @throws ComparisonFailure 40 */ 41 public function assertEquals($expected, $actual, $delta = 0.0, $canonicalize = false, $ignoreCase = false) 42 { 43 if ($actual != $expected) { 44 throw new ComparisonFailure( 45 $expected, 46 $actual, 47 $this->exporter->export($expected), 48 $this->exporter->export($actual) 49 ); 50 } 51 } 52} 53