Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 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
 
12
namespace Symfony\Component\HttpFoundation\Test\Constraint;
13
 
14
use PHPUnit\Framework\Constraint\Constraint;
15
use Symfony\Component\HttpFoundation\Request;
16
use Symfony\Component\HttpFoundation\Response;
17
 
18
/**
19
 * Asserts that the response is in the given format.
20
 *
21
 * @author Kévin Dunglas <dunglas@gmail.com>
22
 */
23
final class ResponseFormatSame extends Constraint
24
{
25
    private Request $request;
26
    private ?string $format;
27
 
28
    public function __construct(Request $request, ?string $format)
29
    {
30
        $this->request = $request;
31
        $this->format = $format;
32
    }
33
 
34
    public function toString(): string
35
    {
36
        return 'format is '.($this->format ?? 'null');
37
    }
38
 
39
    /**
40
     * @param Response $response
41
     */
42
    protected function matches($response): bool
43
    {
44
        return $this->format === $this->request->getFormat($response->headers->get('Content-Type'));
45
    }
46
 
47
    /**
48
     * @param Response $response
49
     */
50
    protected function failureDescription($response): string
51
    {
52
        return 'the Response '.$this->toString();
53
    }
54
 
55
    /**
56
     * @param Response $response
57
     */
58
    protected function additionalFailureDescription($response): string
59
    {
60
        return (string) $response;
61
    }
62
}