Passed
Push — master ( 146be5...1e12ef )
by ANTHONIUS
06:12
created

SessionFactory::decorateSession()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 6
nc 1
nop 2
dl 0
loc 9
ccs 0
cts 8
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
4
namespace Doyo\Bridge\CodeCoverage\Session;
5
6
7
use Doyo\Bridge\CodeCoverage\Driver\Dummy;
8
use Doyo\Bridge\CodeCoverage\Processor;
9
use Symfony\Component\DependencyInjection\ContainerInterface;
10
11
class SessionFactory
12
{
13
    public function createLocalSession(ContainerInterface $container, $name)
14
    {
15
        $session = new LocalSession($name);
16
        $this->decorateSession($container, $session);
17
    }
18
    
19
    protected function decorateSession(ContainerInterface $container, SessionInterface $session)
20
    {
21
        $filter = $container->get('coverage.filter');
22
        $dummy = $container->getParameter(new Dummy());
0 ignored issues
show
Bug introduced by
new Doyo\Bridge\CodeCoverage\Driver\Dummy() of type Doyo\Bridge\CodeCoverage\Driver\Dummy is incompatible with the type string expected by parameter $name of Symfony\Component\Depend...terface::getParameter(). ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

22
        $dummy = $container->getParameter(/** @scrutinizer ignore-type */ new Dummy());
Loading history...
23
24
        $processor = new Processor($dummy, $filter);
0 ignored issues
show
Unused Code introduced by
The call to Doyo\Bridge\CodeCoverage\Processor::__construct() has too many arguments starting with $filter. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

24
        $processor = /** @scrutinizer ignore-call */ new Processor($dummy, $filter);

This check compares calls to functions or methods with their respective definitions. If the call has more arguments than are defined, it raises an issue.

If a function is defined several times with a different number of parameters, the check may pick up the wrong definition and report false positives. One codebase where this has been known to happen is Wordpress. Please note the @ignore annotation hint above.

Loading history...
25
        $session->setProcessor($processor);
0 ignored issues
show
Bug introduced by
The method setProcessor() does not exist on Doyo\Bridge\CodeCoverage\Session\SessionInterface. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

25
        $session->/** @scrutinizer ignore-call */ 
26
                  setProcessor($processor);

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
26
        $session->setContainer($container);
0 ignored issues
show
Bug introduced by
The method setContainer() does not exist on Doyo\Bridge\CodeCoverage\Session\SessionInterface. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

26
        $session->/** @scrutinizer ignore-call */ 
27
                  setContainer($container);

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
27
        $session->save();
28
    }
29
}
30