Passed
Push — master ( 163ca3...6d62ea )
by Armando
01:57
created

Factory::resolveEntityClass()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 7
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 2.0625

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 2
eloc 3
nc 2
nop 3
dl 0
loc 7
ccs 3
cts 4
cp 0.75
crap 2.0625
rs 10
c 1
b 0
f 0
1
<?php
2
3
namespace Longman\TelegramBot\Entities;
4
5
abstract class Factory
6
{
7
    abstract public static function make(array $data, string $bot_username): Entity;
8
9 15
    public static function resolveEntityClass(string $class, array $property, string $bot_username = ''): Entity
10
    {
11 15
        if (is_subclass_of($class, Factory::class)) {
12
            return $class::make($property, $bot_username);
13
        }
14
15 15
        return new $class($property, $bot_username);
16
    }
17
}
18