%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/ArrayContainMatcher.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; class ArrayContainMatcher extends BasicMatcher { /** * @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 'contain' === $name && 1 == count($arguments) && is_array($subject) ; } /** * @param mixed $subject * @param array $arguments * * @return bool */ protected function matches($subject, array $arguments) { return in_array($arguments[0], $subject, true); } /** * @param string $name * @param mixed $subject * @param array $arguments * * @return FailureException */ protected function getFailureException($name, $subject, array $arguments) { return new FailureException(sprintf( 'Expected %s to contain %s, but it does not.', $this->presenter->presentValue($subject), $this->presenter->presentValue($arguments[0]) )); } /** * @param string $name * @param mixed $subject * @param array $arguments * * @return FailureException */ protected function getNegativeFailureException($name, $subject, array $arguments) { return new FailureException(sprintf( 'Expected %s not to contain %s, but it does.', $this->presenter->presentValue($subject), $this->presenter->presentValue($arguments[0]) )); } }