%PDF- %PDF-
Direktori : /var/www/html/rental/vendor/phpspec/phpspec/src/PhpSpec/Matcher/ |
Current File : /var/www/html/rental/vendor/phpspec/phpspec/src/PhpSpec/Matcher/IdentityMatcher.php |
<?php /* * This file is part of PhpSpec, A php toolset to drive emergent * design by specification. * * (c) Marcello Duarte <marcello.duarte@gmail.com> * (c) Konstantin Kudryashov <ever.zet@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace PhpSpec\Matcher; use PhpSpec\Formatter\Presenter\PresenterInterface; use PhpSpec\Exception\Example\FailureException; use PhpSpec\Exception\Example\NotEqualException; class IdentityMatcher extends BasicMatcher { /** * @var array */ private static $keywords = array( 'return', 'be', 'equal', 'beEqualTo' ); /** * @var PresenterInterface */ private $presenter; /** * @param PresenterInterface $presenter */ public function __construct(PresenterInterface $presenter) { $this->presenter = $presenter; } /** * @param string $name * @param mixed $subject * @param array $arguments * * @return bool */ public function supports($name, $subject, array $arguments) { return in_array($name, self::$keywords) && 1 == count($arguments) ; } /** * @param mixed $subject * @param array $arguments * * @return bool */ protected function matches($subject, array $arguments) { return $subject === $arguments[0]; } /** * @param string $name * @param mixed $subject * @param array $arguments * * @return NotEqualException */ protected function getFailureException($name, $subject, array $arguments) { return new NotEqualException(sprintf( 'Expected %s, but got %s.', $this->presenter->presentValue($arguments[0]), $this->presenter->presentValue($subject) ), $arguments[0], $subject); } /** * @param string $name * @param mixed $subject * @param array $arguments * * @return FailureException */ protected function getNegativeFailureException($name, $subject, array $arguments) { return new FailureException(sprintf( 'Did not expect %s, but got one.', $this->presenter->presentValue($subject) )); } }