/** * 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. * * @param mixed $other Value or object to evaluate. * @param string $description Additional information about the test * @param bool $returnResult Whether to return a result or throw an exception * @return mixed * @throws PHPUnit_Framework_ExpectationFailedException */ public function evaluate($other, $description = '', $returnResult = false) { $comparatorFactory = PHPUnit_Framework_ComparatorFactory::getDefaultInstance(); try { $comparator = $comparatorFactory->getComparatorFor($other, $this->value); $comparator->assertEquals($this->value, $other, $this->delta, $this->canonicalize, $this->ignoreCase); } catch (PHPUnit_Framework_ComparisonFailure $f) { if ($returnResult) { return false; } throw new PHPUnit_Framework_ExpectationFailedException(trim($description . "\n" . $f->getMessage()), $f); } return true; }
static function setUpBeforeClass() { \PHPUnit_Framework_ComparatorFactory::getDefaultInstance()->register(new \Tests\Testing\Comparator_ArrayEnumerable()); }