Blame | Last modification | View Log | Download
<?php/** This file is part of PHPUnit.** (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.*//*** Constraint that asserts that the array it is evaluated for has a given key.** Uses array_key_exists() to check if the key is found in the input array, if* not found the evaluation fails.** The array key is passed in the constructor.*/class PHPUnit_Framework_Constraint_ArrayHasKey extends PHPUnit_Framework_Constraint{/*** @var int|string*/protected $key;/*** @param int|string $key*/public function __construct($key){parent::__construct();$this->key = $key;}/*** Evaluates the constraint for parameter $other. Returns true if the* constraint is met, false otherwise.** @param mixed $other Value or object to evaluate.** @return bool*/protected function matches($other){if (is_array($other)) {return array_key_exists($this->key, $other);}if ($other instanceof ArrayAccess) {return $other->offsetExists($this->key);}return false;}/*** Returns a string representation of the constraint.** @return string*/public function toString(){return 'has the key ' . $this->exporter->export($this->key);}/*** Returns the description of the failure** The beginning of failure messages is "Failed asserting that" in most* cases. This method should return the second part of that sentence.** @param mixed $other Evaluated value or object.** @return string*/protected function failureDescription($other){return 'an array ' . $this->toString();}}