Passed
Push — dev ( 737777...096a7e )
by Janko
05:19
created

CustomControllerHelperTrait::bodyParameter()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 7
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 2

Importance

Changes 0
Metric Value
cc 2
eloc 3
nc 2
nop 1
dl 0
loc 7
ccs 4
cts 4
cp 1
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Stu\Lib\Request;
6
7
use MPScholten\RequestParser\BaseControllerHelperTrait;
8
use MPScholten\RequestParser\Config;
9
use MPScholten\RequestParser\TypeParser;
10
use request;
11
12
trait CustomControllerHelperTrait
13
{
14
    use BaseControllerHelperTrait;
15
16 97
    public function __construct()
17
    {
18 97
        if (array_key_exists('REQUEST_METHOD', $_SERVER)) {
19 96
            $request = $_SERVER['REQUEST_METHOD'] === 'GET' ? $_GET : $_POST;
20 96
            $this->initRequestParser($request, new Config());
21
        }
22
    }
23
24
    /**
25
     * @param array<mixed> $request
26
     * @param callable|Config $config
27
     */
28 192
    final protected function createRequestParserFactory($request, $config): CustomRequestParserFactory
29
    {
30 192
        return new CustomRequestParserFactory($request, $config);
31
    }
32
33 22
    protected function tidyString(string $string): string
34
    {
35 22
        return trim(
36 22
            strip_tags($string)
37 22
        );
38
    }
39
40 190
    protected function parameter(string $name): TypeParser
41
    {
42 190
        if (request::isMocked()) {
43 94
            $this->initRequestParser(request::getvars(), new Config());
44
        }
45
46 190
        return $this->queryParameter($name);
47
    }
48
49 2
    protected function bodyParameter(string $name): TypeParser
50
    {
51 2
        if (request::isMocked()) {
52 2
            $this->initRequestParser(request::getvars(), new Config());
53
        }
54
55 2
        return $this->bodyParser->get($name);
56
    }
57
}
58