* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ /** * Constraint that asserts that the string it is evaluated for matches * a regular expression. * * Checks a given value using the Perl Compatible Regular Expression extension * in PHP. The pattern is matched by executing preg_match(). * * The pattern string passed in the constructor. */ class PHPUnit_Framework_Constraint_PCREMatch extends PHPUnit_Framework_Constraint { /** * @var string */ protected $pattern; /** * @param string $pattern */ public function __construct($pattern) { parent::__construct(); $this->pattern = $pattern; } /** * 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) { return preg_match($this->pattern, $other) > 0; } /** * Returns a string representation of the constraint. * * @return string */ public function toString() { return sprintf( 'matches PCRE pattern "%s"', $this->pattern ); } }