Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
13 / 13
100.00% covered (success)
100.00%
2 / 2
CRAP
100.00% covered (success)
100.00%
1 / 1
RequestMethod
100.00% covered (success)
100.00%
13 / 13
100.00% covered (success)
100.00%
2 / 2
3
100.00% covered (success)
100.00%
1 / 1
 toSymfonyRequestMethod
100.00% covered (success)
100.00%
3 / 3
100.00% covered (success)
100.00%
1 / 1
2
 allowedInOpenApi
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2namespace Apie\Core\Enums;
3
4enum RequestMethod: string
5{
6    case POST = 'POST';
7    case PUT = 'PUT';
8    case DELETE = 'DELETE';
9    case PATCH = 'PATCH';
10    case GET = 'GET';
11    case HEAD = 'HEAD';
12    case CONNECT = 'CONNECT';
13    case OPTIONS = 'OPTIONS';
14    case TRACE = 'TRACE';
15    case PROPFIND = 'PROPFIND';
16    case PROPPATCH = 'PROPPATCH';
17    case MKCOL = 'MKCOL';
18    case COPY = 'COPY';
19    case MOVE = 'MOVE';
20    case LOCK = 'LOCK';
21    case UNLOCK = 'UNLOCK';
22    case ANY = 'ANY';
23
24    /**
25     * @return string|array<string>
26     */
27    public function toSymfonyRequestMethod(): string|array
28    {
29        if ($this === self::ANY) {
30            return [];
31        }
32        return $this->value;
33    }
34
35    /**
36     * @return array<RequestMethod>
37     */
38    public static function allowedInOpenApi(): array
39    {
40        return [
41            self::POST,
42            self::PUT,
43            self::DELETE,
44            self::PATCH,
45            self::GET,
46            self::HEAD,
47            self::OPTIONS,
48            self::TRACE,
49        ];
50    }
51}