Mercurial > hg > isophonics-drupal-site
comparison vendor/phpunit/php-code-coverage/src/Report/Xml/Totals.php @ 14:1fec387a4317
Update Drupal core to 8.5.2 via Composer
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:46:53 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
13:5fb285c0d0e3 | 14:1fec387a4317 |
---|---|
1 <?php | |
2 /* | |
3 * This file is part of the php-code-coverage package. | |
4 * | |
5 * (c) Sebastian Bergmann <sebastian@phpunit.de> | |
6 * | |
7 * For the full copyright and license information, please view the LICENSE | |
8 * file that was distributed with this source code. | |
9 */ | |
10 | |
11 namespace SebastianBergmann\CodeCoverage\Report\Xml; | |
12 | |
13 use SebastianBergmann\CodeCoverage\Util; | |
14 | |
15 class Totals | |
16 { | |
17 /** | |
18 * @var \DOMNode | |
19 */ | |
20 private $container; | |
21 | |
22 /** | |
23 * @var \DOMElement | |
24 */ | |
25 private $linesNode; | |
26 | |
27 /** | |
28 * @var \DOMElement | |
29 */ | |
30 private $methodsNode; | |
31 | |
32 /** | |
33 * @var \DOMElement | |
34 */ | |
35 private $functionsNode; | |
36 | |
37 /** | |
38 * @var \DOMElement | |
39 */ | |
40 private $classesNode; | |
41 | |
42 /** | |
43 * @var \DOMElement | |
44 */ | |
45 private $traitsNode; | |
46 | |
47 public function __construct(\DOMElement $container) | |
48 { | |
49 $this->container = $container; | |
50 $dom = $container->ownerDocument; | |
51 | |
52 $this->linesNode = $dom->createElementNS( | |
53 'http://schema.phpunit.de/coverage/1.0', | |
54 'lines' | |
55 ); | |
56 | |
57 $this->methodsNode = $dom->createElementNS( | |
58 'http://schema.phpunit.de/coverage/1.0', | |
59 'methods' | |
60 ); | |
61 | |
62 $this->functionsNode = $dom->createElementNS( | |
63 'http://schema.phpunit.de/coverage/1.0', | |
64 'functions' | |
65 ); | |
66 | |
67 $this->classesNode = $dom->createElementNS( | |
68 'http://schema.phpunit.de/coverage/1.0', | |
69 'classes' | |
70 ); | |
71 | |
72 $this->traitsNode = $dom->createElementNS( | |
73 'http://schema.phpunit.de/coverage/1.0', | |
74 'traits' | |
75 ); | |
76 | |
77 $container->appendChild($this->linesNode); | |
78 $container->appendChild($this->methodsNode); | |
79 $container->appendChild($this->functionsNode); | |
80 $container->appendChild($this->classesNode); | |
81 $container->appendChild($this->traitsNode); | |
82 } | |
83 | |
84 public function getContainer() | |
85 { | |
86 return $this->container; | |
87 } | |
88 | |
89 public function setNumLines($loc, $cloc, $ncloc, $executable, $executed) | |
90 { | |
91 $this->linesNode->setAttribute('total', $loc); | |
92 $this->linesNode->setAttribute('comments', $cloc); | |
93 $this->linesNode->setAttribute('code', $ncloc); | |
94 $this->linesNode->setAttribute('executable', $executable); | |
95 $this->linesNode->setAttribute('executed', $executed); | |
96 $this->linesNode->setAttribute( | |
97 'percent', | |
98 $executable === 0 ? 0 : \sprintf('%01.2F', Util::percent($executed, $executable, false)) | |
99 ); | |
100 } | |
101 | |
102 public function setNumClasses($count, $tested) | |
103 { | |
104 $this->classesNode->setAttribute('count', $count); | |
105 $this->classesNode->setAttribute('tested', $tested); | |
106 $this->classesNode->setAttribute( | |
107 'percent', | |
108 $count === 0 ? 0 : \sprintf('%01.2F', Util::percent($tested, $count, false)) | |
109 ); | |
110 } | |
111 | |
112 public function setNumTraits($count, $tested) | |
113 { | |
114 $this->traitsNode->setAttribute('count', $count); | |
115 $this->traitsNode->setAttribute('tested', $tested); | |
116 $this->traitsNode->setAttribute( | |
117 'percent', | |
118 $count === 0 ? 0 : \sprintf('%01.2F', Util::percent($tested, $count, false)) | |
119 ); | |
120 } | |
121 | |
122 public function setNumMethods($count, $tested) | |
123 { | |
124 $this->methodsNode->setAttribute('count', $count); | |
125 $this->methodsNode->setAttribute('tested', $tested); | |
126 $this->methodsNode->setAttribute( | |
127 'percent', | |
128 $count === 0 ? 0 : \sprintf('%01.2F', Util::percent($tested, $count, false)) | |
129 ); | |
130 } | |
131 | |
132 public function setNumFunctions($count, $tested) | |
133 { | |
134 $this->functionsNode->setAttribute('count', $count); | |
135 $this->functionsNode->setAttribute('tested', $tested); | |
136 $this->functionsNode->setAttribute( | |
137 'percent', | |
138 $count === 0 ? 0 : \sprintf('%01.2F', Util::percent($tested, $count, false)) | |
139 ); | |
140 } | |
141 } |