ViewFactory.php$0 ➔ createWithCallback()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 13
rs 9.8333
c 0
b 0
f 0
cc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A ViewFactory.php$0 ➔ getPresenterName() 0 3 1
1
<?php
2
declare(strict_types=1);
3
4
namespace Shoot\Shoot\Tests\Fixtures;
5
6
use Shoot\Shoot\HasPresenterInterface;
7
use Shoot\Shoot\PresentationModel;
8
use Shoot\Shoot\View;
9
10
final class ViewFactory
11
{
12
    /**
13
     * @return View
14
     */
15
    public static function create(): View
16
    {
17
        return self::createWithCallback(function () {
18
            // noop
19
        });
20
    }
21
22
    /**
23
     * @param callable $callback
24
     *
25
     * @return View
26
     */
27
    public static function createWithCallback(callable $callback): View
28
    {
29
        $presentationModel = new class extends PresentationModel implements HasPresenterInterface
30
        {
31
            protected $variable = '';
32
33
            public function getPresenterName(): string
34
            {
35
                return 'MockPresenter';
36
            }
37
        };
38
39
        return new View('template.twig', $presentationModel, $callback);
40
    }
41
}
42