9
9
*/
10
10
namespace SebastianBergmann \CodeCoverage \Report \Cobertura ;
11
11
12
+ use Composer \InstalledVersions ;
12
13
use DOMDocument ;
13
14
use DOMElement ;
14
15
use DOMImplementation ;
@@ -31,38 +32,14 @@ class CoberturaCoverage extends CoberturaElement
31
32
*/
32
33
private $ timestamp ;
33
34
34
- /**
35
- * @var int
36
- */
37
- private $ methodsValid ;
38
-
39
- /**
40
- * @var int
41
- */
42
- private $ methodsCovered ;
43
-
44
- /**
45
- * @var int
46
- */
47
- private $ classesValid ;
48
-
49
- /**
50
- * @var int
51
- */
52
- private $ classesCovered ;
53
-
54
35
public static function create (Directory $ report ): self
55
36
{
56
37
$ coverage = new self (
57
38
time (),
58
39
$ report ->numberOfExecutableLines (),
59
40
$ report ->numberOfExecutedLines (),
60
41
$ report ->numberOfExecutableBranches (),
61
- $ report ->numberOfExecutedBranches (),
62
- $ report ->numberOfFunctionsAndMethods (),
63
- $ report ->numberOfTestedFunctionsAndMethods (),
64
- $ report ->numberOfClassesAndTraits (),
65
- $ report ->numberOfTestedClassesAndTraits ()
42
+ $ report ->numberOfExecutedBranches ()
66
43
);
67
44
68
45
foreach ($ report as $ item ) {
@@ -81,17 +58,9 @@ private function __construct(
81
58
int $ linesValid ,
82
59
int $ linesCovered ,
83
60
int $ branchesValid ,
84
- int $ branchesCovered ,
85
- int $ methodsValid ,
86
- int $ methodsCovered ,
87
- int $ classesValid ,
88
- int $ classesCovered
61
+ int $ branchesCovered
89
62
) {
90
- $ this ->timestamp = $ timestamp ;
91
- $ this ->methodsValid = $ methodsValid ;
92
- $ this ->methodsCovered = $ methodsCovered ;
93
- $ this ->classesValid = $ classesValid ;
94
- $ this ->classesCovered = $ classesCovered ;
63
+ $ this ->timestamp = $ timestamp ;
95
64
parent ::__construct ($ linesValid , $ linesCovered , $ branchesValid , $ branchesCovered );
96
65
}
97
66
@@ -110,22 +79,20 @@ public function generateDocument(): DOMDocument
110
79
$ document ->encoding = 'UTF-8 ' ;
111
80
$ document ->formatOutput = true ;
112
81
113
- $ methodRate = $ this ->methodsValid === 0 ? 0 : $ this ->methodsCovered / $ this ->methodsValid ;
114
- $ classRate = $ this ->classesValid === 0 ? 0 : $ this ->classesCovered / $ this ->classesValid ;
82
+ $ comment = $ document ->createComment (sprintf (
83
+ 'Cobertura coverage report generated by the PHP library "%s" on %s. ' ,
84
+ InstalledVersions::getRootPackage ()['name ' ],
85
+ date ('c ' , $ this ->timestamp ),
86
+ ));
87
+ $ document ->appendChild ($ comment );
115
88
116
89
$ coverageElement = $ document ->createElement ('coverage ' );
117
90
$ coverageElement ->setAttribute ('line-rate ' , (string ) $ this ->lineRate ());
118
91
$ coverageElement ->setAttribute ('branch-rate ' , (string ) $ this ->branchRate ());
119
- $ coverageElement ->setAttribute ('method-rate ' , (string ) $ methodRate );
120
- $ coverageElement ->setAttribute ('class-rate ' , (string ) $ classRate );
121
92
$ coverageElement ->setAttribute ('lines-covered ' , (string ) $ this ->linesCovered );
122
93
$ coverageElement ->setAttribute ('lines-valid ' , (string ) $ this ->linesValid );
123
94
$ coverageElement ->setAttribute ('branches-covered ' , (string ) $ this ->branchesCovered );
124
95
$ coverageElement ->setAttribute ('branches-valid ' , (string ) $ this ->branchesValid );
125
- $ coverageElement ->setAttribute ('methods-covered ' , (string ) $ this ->methodsCovered );
126
- $ coverageElement ->setAttribute ('methods-valid ' , (string ) $ this ->methodsValid );
127
- $ coverageElement ->setAttribute ('classes-covered ' , (string ) $ this ->classesCovered );
128
- $ coverageElement ->setAttribute ('classes-valid ' , (string ) $ this ->classesValid );
129
96
$ coverageElement ->setAttribute ('complexity ' , (string ) $ this ->complexity ());
130
97
$ coverageElement ->setAttribute ('version ' , '0.4 ' );
131
98
$ coverageElement ->setAttribute ('timestamp ' , (string ) $ this ->timestamp );
0 commit comments