/**
  * 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;
 }
Ejemplo n.º 2
0
 /**
  * Returns the default instance.
  *
  * @return PHPUnit_Framework_ComparatorFactory
  */
 public static function getDefaultInstance()
 {
     if (self::$defaultInstance === NULL) {
         self::$defaultInstance = new PHPUnit_Framework_ComparatorFactory();
     }
     return self::$defaultInstance;
 }
 public function testUnregister()
 {
     $comparator = new TestClassComparator();
     $factory = new PHPUnit_Framework_ComparatorFactory();
     $factory->register($comparator);
     $factory->unregister($comparator);
     $a = new TestClass();
     $b = new TestClass();
     $expected = 'PHPUnit_Framework_Comparator_Object';
     if (get_class($factory->getComparatorFor($a, $b)) != $expected) {
         var_dump(get_class($factory->getComparatorFor($a, $b)));
         $this->fail();
     }
 }
Ejemplo n.º 4
0
 static function setUpBeforeClass()
 {
     \PHPUnit_Framework_ComparatorFactory::getDefaultInstance()->register(new \Tests\Testing\Comparator_ArrayEnumerable());
 }