friendship ended with social-app. php is my new best friend
1<?php
2
3/*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12namespace Symfony\Component\DomCrawler\Test\Constraint;
13
14use PHPUnit\Framework\Constraint\Constraint;
15use Symfony\Component\DomCrawler\Crawler;
16
17final class CrawlerSelectorExists extends Constraint
18{
19 public function __construct(
20 private string $selector,
21 ) {
22 }
23
24 public function toString(): string
25 {
26 return \sprintf('matches selector "%s"', $this->selector);
27 }
28
29 /**
30 * @param Crawler $crawler
31 */
32 protected function matches($crawler): bool
33 {
34 return 0 < \count($crawler->filter($this->selector));
35 }
36
37 /**
38 * @param Crawler $crawler
39 */
40 protected function failureDescription($crawler): string
41 {
42 return 'the Crawler '.$this->toString();
43 }
44}