| 113 |
165 |
* Tests that the logger generates an image file. |
| 114 |
166 |
* |
| 115 |
167 |
* @return void |
|
168 |
+ * @covers PHP_Depend_Log_Jdepend_Chart |
|
169 |
+ * @group pdepend |
|
170 |
+ * @group pdepend::log |
|
171 |
+ * @group pdepend::log::jdepend |
|
172 |
+ * @group unittest |
| 116 |
173 |
*/ |
| 117 |
174 |
public function testGeneratesCorrectSVGImageFile() |
| 118 |
175 |
{ |
| 119 |
|
- $fileName = self::createRunResourceURI('jdepend-test-out.svg'); |
| 120 |
|
- if (file_exists($fileName)) { |
| 121 |
|
- @unlink($fileName); |
| 122 |
|
- } |
|
176 |
+ $nodes = new PHP_Depend_Code_NodeIterator($this->_createPackages(true, true)); |
| 123 |
177 |
|
| 124 |
|
- $nodes = new PHP_Depend_Code_NodeIterator(array( |
| 125 |
|
- new PHP_Depend_Code_Package('packageA'), |
| 126 |
|
- new PHP_Depend_Code_Package('packageB') |
| 127 |
|
- )); |
|
178 |
+ $analyzer = new PHP_Depend_Metrics_Dependency_Analyzer(); |
|
179 |
+ $analyzer->analyze($nodes); |
| 128 |
180 |
|
|
181 |
+ $logger = new PHP_Depend_Log_Jdepend_Chart(); |
|
182 |
+ $logger->setLogFile($this->_outputFile); |
|
183 |
+ $logger->setCode($nodes); |
|
184 |
+ $logger->log($analyzer); |
|
185 |
+ $logger->close(); |
|
186 |
+ |
|
187 |
+ $this->assertFileExists($this->_outputFile); |
|
188 |
+ } |
|
189 |
+ |
|
190 |
+ /** |
|
191 |
+ * testGeneratedSvgImageContainsExpectedPackages |
|
192 |
+ * |
|
193 |
+ * @return void |
|
194 |
+ * @covers PHP_Depend_Log_Jdepend_Chart |
|
195 |
+ * @group pdepend |
|
196 |
+ * @group pdepend::log |
|
197 |
+ * @group pdepend::log::jdepend |
|
198 |
+ * @group unittest |
|
199 |
+ */ |
|
200 |
+ public function testGeneratedSvgImageContainsExpectedPackages() |
|
201 |
+ { |
|
202 |
+ $nodes = new PHP_Depend_Code_NodeIterator($this->_createPackages(true, true)); |
|
203 |
+ |
| 129 |
204 |
$analyzer = new PHP_Depend_Metrics_Dependency_Analyzer(); |
| 130 |
205 |
$analyzer->analyze($nodes); |
| 131 |
206 |
|
| 132 |
207 |
$logger = new PHP_Depend_Log_Jdepend_Chart(); |
| 133 |
|
- $logger->setLogFile($fileName); |
|
208 |
+ $logger->setLogFile($this->_outputFile); |
| 134 |
209 |
$logger->setCode($nodes); |
| 135 |
210 |
$logger->log($analyzer); |
|
211 |
+ $logger->close(); |
| 136 |
212 |
|
| 137 |
|
- $this->assertFileNotExists($fileName); |
|
213 |
+ $svg = new DOMDocument(); |
|
214 |
+ $svg->load($this->_outputFile); |
|
215 |
+ |
|
216 |
+ $xpath = new DOMXPath($svg); |
|
217 |
+ $xpath->registerNamespace('s', 'http://www.w3.org/2000/svg'); |
|
218 |
+ |
|
219 |
+ $this->assertEquals(1, $xpath->query("//s:ellipse[@title='package0']")->length); |
|
220 |
+ $this->assertEquals(1, $xpath->query("//s:ellipse[@title='package1']")->length); |
|
221 |
+ } |
|
222 |
+ |
|
223 |
+ /** |
|
224 |
+ * testGeneratesSVGImageDoesNotContainNoneUserDefinedPackages |
|
225 |
+ * |
|
226 |
+ * @return void |
|
227 |
+ * @covers PHP_Depend_Log_Jdepend_Chart |
|
228 |
+ * @group pdepend |
|
229 |
+ * @group pdepend::log |
|
230 |
+ * @group pdepend::log::jdepend |
|
231 |
+ * @group unittest |
|
232 |
+ */ |
|
233 |
+ public function testGeneratesSVGImageDoesNotContainNoneUserDefinedPackages() |
|
234 |
+ { |
|
235 |
+ $nodes = new PHP_Depend_Code_NodeIterator($this->_createPackages(true, false, true)); |
|
236 |
+ |
|
237 |
+ $analyzer = new PHP_Depend_Metrics_Dependency_Analyzer(); |
|
238 |
+ $analyzer->analyze($nodes); |
|
239 |
+ |
|
240 |
+ $logger = new PHP_Depend_Log_Jdepend_Chart(); |
|
241 |
+ $logger->setLogFile($this->_outputFile); |
|
242 |
+ $logger->setCode($nodes); |
|
243 |
+ $logger->log($analyzer); |
| 138 |
244 |
$logger->close(); |
| 139 |
|
- $this->assertFileExists($fileName); |
| 140 |
245 |
|
| 141 |
246 |
$svg = new DOMDocument(); |
| 142 |
|
- $svg->load($fileName); |
|
247 |
+ $svg->load($this->_outputFile); |
| 143 |
248 |
|
| 144 |
249 |
$xpath = new DOMXPath($svg); |
| 145 |
250 |
$xpath->registerNamespace('s', 'http://www.w3.org/2000/svg'); |
| 146 |
251 |
|
| 147 |
|
- $this->assertEquals(1, $xpath->query("//s:ellipse[@title='packageA']")->length); |
| 148 |
|
- $this->assertEquals(1, $xpath->query("//s:ellipse[@title='packageB']")->length); |
| 149 |
|
- |
| 150 |
|
- unlink($fileName); |
|
252 |
+ $this->assertEquals(0, $xpath->query("//s:ellipse[@title='package1']")->length); |
| 151 |
253 |
} |
| 152 |
254 |
|
|
255 |
+ /** |
|
256 |
+ * testCalculateCorrectEllipseSize |
|
257 |
+ * |
|
258 |
+ * @return void |
|
259 |
+ * @covers PHP_Depend_Log_Jdepend_Chart |
|
260 |
+ * @group pdepend |
|
261 |
+ * @group pdepend::log |
|
262 |
+ * @group pdepend::log::jdepend |
|
263 |
+ * @group unittest |
|
264 |
+ */ |
| 153 |
265 |
public function testCalculateCorrectEllipseSize() |
| 154 |
266 |
{ |
| 155 |
|
- $fileName = self::createRunResourceURI('jdepend-test-out.svg'); |
| 156 |
|
- if (file_exists($fileName)) { |
| 157 |
|
- @unlink($fileName); |
| 158 |
|
- } |
|
267 |
+ $nodes = $this->_createPackages(true, true); |
| 159 |
268 |
|
| 160 |
|
- $nodes = array( |
| 161 |
|
- new PHP_Depend_Code_Package('packageA'), |
| 162 |
|
- new PHP_Depend_Code_Package('packageB') |
| 163 |
|
- ); |
| 164 |
|
- |
| 165 |
269 |
$analyzer = new PHP_Depend_Log_Jdepend_DependencyAnalyzer(); |
| 166 |
270 |
$analyzer->stats = array( |
| 167 |
271 |
$nodes[0]->getUUID() => array( |
| 183 |
287 |
$nodes = new PHP_Depend_Code_NodeIterator($nodes); |
| 184 |
288 |
|
| 185 |
289 |
$logger = new PHP_Depend_Log_Jdepend_Chart(); |
| 186 |
|
- $logger->setLogFile($fileName); |
|
290 |
+ $logger->setLogFile($this->_outputFile); |
| 187 |
291 |
$logger->setCode($nodes); |
| 188 |
292 |
$logger->log($analyzer); |
| 189 |
293 |
|
| 190 |
|
- $this->assertFileNotExists($fileName); |
| 191 |
294 |
$logger->close(); |
| 192 |
|
- $this->assertFileExists($fileName); |
| 193 |
295 |
|
| 194 |
296 |
$svg = new DOMDocument(); |
| 195 |
|
- $svg->load($fileName); |
|
297 |
+ $svg->load($this->_outputFile); |
| 196 |
298 |
|
| 197 |
299 |
$xpath = new DOMXPath($svg); |
| 198 |
300 |
$xpath->registerNamespace('s', 'http://www.w3.org/2000/svg'); |
| 199 |
301 |
|
| 200 |
|
- $ellipseA = $xpath->query("//s:ellipse[@title='packageA']")->item(0); |
|
302 |
+ $ellipseA = $xpath->query("//s:ellipse[@title='package0']")->item(0); |
| 201 |
303 |
$matrixA = $ellipseA->getAttribute('transform'); |
| 202 |
304 |
preg_match('/matrix\(([^,]+),([^,]+),([^,]+),([^,]+),([^,]+),([^,]+)\)/', $matrixA, $matches); |
| 203 |
305 |
$this->assertEquals(1, $matches[1]); |
| 204 |
306 |
$this->assertEquals(1, $matches[4]); |
| 205 |
307 |
|
| 206 |
|
- $ellipseB = $xpath->query("//s:ellipse[@title='packageB']")->item(0); |
|
308 |
+ $ellipseB = $xpath->query("//s:ellipse[@title='package1']")->item(0); |
| 207 |
309 |
$matrixB = $ellipseB->getAttribute('transform'); |
| 208 |
310 |
preg_match('/matrix\(([^,]+),([^,]+),([^,]+),([^,]+),([^,]+),([^,]+)\)/', $matrixB, $matches); |
| 209 |
311 |
$this->assertEquals(0.3333333, $matches[1], null, 0.000001); |
| 210 |
312 |
$this->assertEquals(0.3333333, $matches[4], null, 0.000001); |
| 211 |
|
- |
| 212 |
|
- unlink($fileName); |
| 213 |
313 |
} |
| 214 |
314 |
|
| 215 |
315 |
/** |
| 216 |
316 |
* Tests that the logger generates an image file. |
| 217 |
317 |
* |
| 218 |
318 |
* @return void |
|
319 |
+ * @covers PHP_Depend_Log_Jdepend_Chart |
|
320 |
+ * @group pdepend |
|
321 |
+ * @group pdepend::log |
|
322 |
+ * @group pdepend::log::jdepend |
|
323 |
+ * @group unittest |
| 219 |
324 |
*/ |
| 220 |
325 |
public function testGeneratesImageFile() |
| 221 |
326 |
{ |