Scan   A
last analyzed

Complexity

Total Complexity 8

Size/Duplication

Total Lines 70
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 70
ccs 20
cts 20
cp 1
rs 10
c 0
b 0
f 0
wmc 8

6 Methods

Rating   Name   Duplication   Size   Complexity  
A getTotalErrors() 0 8 2
A __construct() 0 4 1
A getScannedFileCollection() 0 3 1
A getSummary() 0 3 1
A getTotalWarnings() 0 8 2
A getTotalEffectedFiles() 0 3 1
1
<?php
2
3
4
namespace cwreden\php7ccAnalyser;
5
6
7
class Scan
8
{
9
    /**
10
     * @var Summary
11
     */
12
    private $summary;
13
    /**
14
     * @var ScannedSourceFileCollection
15
     */
16
    private $scannedFileCollection;
17
18
    /**
19
     * Scan constructor.
20
     * @param Summary $summary
21
     * @param ScannedSourceFileCollection $scannedFileCollection
22
     */
23 4
    public function __construct(Summary $summary, ScannedSourceFileCollection $scannedFileCollection)
24
    {
25 4
        $this->summary = $summary;
26 4
        $this->scannedFileCollection = $scannedFileCollection;
27 4
    }
28
29
    /**
30
     * @return Summary
31
     */
32 1
    public function getSummary(): Summary
33
    {
34 1
        return $this->summary;
35
    }
36
37
    /**
38
     * @return int
39
     */
40 1
    public function getTotalWarnings()
41
    {
42 1
        $warnings = 0;
43
        /** @var ScannedSourceFile $scannedFile */
44 1
        foreach ($this->getScannedFileCollection() as $scannedFile) {
45 1
            $warnings += $scannedFile->getTotalWarnings();
46
        }
47 1
        return $warnings;
48
    }
49
50
    /**
51
     * @return int
52
     */
53 1
    public function getTotalErrors()
54
    {
55 1
        $errors = 0;
56
        /** @var ScannedSourceFile $scannedFile */
57 1
        foreach ($this->getScannedFileCollection() as $scannedFile) {
58 1
            $errors += $scannedFile->getTotalErrors();
59
        }
60 1
        return $errors;
61
    }
62
63
    /**
64
     * @return int
65
     */
66 1
    public function getTotalEffectedFiles()
67
    {
68 1
        return $this->getScannedFileCollection()->getTotal();
69
    }
70
71
    /**
72
     * @return ScannedSourceFileCollection
73
     */
74 3
    public function getScannedFileCollection(): ScannedSourceFileCollection
75
    {
76 3
        return $this->scannedFileCollection;
77
    }
78
}