HandleLastPartOfClassName   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 4
dl 0
loc 14
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getMethodName() 0 5 1
A __construct() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace League\Tactician\Handler\Mapping\MethodName;
6
7
use function ucfirst;
8
9
/**
10
 * Assumes the method is handle + the last portion of the class name.
11
 *
12
 * Examples:
13
 *  - \MyGlobalCommand              => $handler->handleMyGlobalCommand()
14
 *  - \My\App\TaskCompletedCommand  => $handler->handleTaskCompletedCommand()
15
 */
16
final class HandleLastPartOfClassName implements MethodNameInflector
17
{
18
    private LastPartOfClassName $lastPartOfClassName;
19
20 5
    public function __construct()
21
    {
22 5
        $this->lastPartOfClassName = new LastPartOfClassName();
23 5
    }
24
25 5
    public function getMethodName(string $commandClassName): string
26
    {
27 5
        $commandName = $this->lastPartOfClassName->getMethodName($commandClassName);
28
29 5
        return 'handle' . ucfirst($commandName);
30
    }
31
}
32