PruebaAssist::riesgos()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 13
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 12
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 11
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 13
ccs 12
cts 12
cp 1
crap 1
rs 9.9
1
<?php
2
namespace src\factory;
3
4
use src\Factory;
5
use src\FactoryClassInterface;
6
use src\PruebaAssist as SrcPruebaAssist;
7
use src\riesgos\RiesgoAlcohol;
8
use src\riesgos\RiesgoAlucinogenos;
9
use src\riesgos\RiesgoAnfetamina;
10
use src\riesgos\RiesgoCannabis;
11
use src\riesgos\RiesgoCocaina;
12
use src\riesgos\RiesgoInhalables;
13
use src\riesgos\RiesgoOpiaceos;
14
use src\riesgos\RiesgoOtros;
15
use src\riesgos\Riesgos;
16
use src\riesgos\RiesgoSedantes;
17
use src\riesgos\RiesgoTabaco;
18
use src\sustancias\Sustancias;
19
20
class PruebaAssist implements FactoryClassInterface
21
{
22 11
    public function crear(array $array): object
23
    {
24 11
        $factory = new Factory();
25
26 11
        $sustancias = $factory->crear('src\factory\sustancias\Sustancias', $array);
27
28 11
        $riesgos = $this->riesgos($sustancias);
29
30 11
        return new SrcPruebaAssist($sustancias, $riesgos);
31
    }
32
33 11
    private function riesgos(Sustancias $sustancias): Riesgos
34
    {
35 11
        return new Riesgos(
36 11
            new RiesgoTabaco($sustancias->tabaco()),
37 11
            new RiesgoAlcohol($sustancias->alcohol()),
38 11
            new RiesgoCannabis($sustancias->cannabis()),
39 11
            new RiesgoCocaina($sustancias->cocaina()),
40 11
            new RiesgoAnfetamina($sustancias->anfetamina()),
41 11
            new RiesgoInhalables($sustancias->inhalables()),
42 11
            new RiesgoSedantes($sustancias->sedantes()),
43 11
            new RiesgoAlucinogenos($sustancias->alucinogenos()),
44 11
            new RiesgoOpiaceos($sustancias->opiaceos()),
45 11
            new RiesgoOtros($sustancias->otros())
46
        );
47
    }
48
}
49