/** * testWmciMetricIsCalculatedForCurrentAndNotParentClass * * @return void */ public function testWmciMetricIsCalculatedForCurrentAndNotParentClass() { $packages = self::parseCodeResourceForTest(); $class = $packages->current()->getClasses()->current(); $ccnAnalyzer = new PHP_Depend_Metrics_CyclomaticComplexity_Analyzer(); $ccnAnalyzer->setCache(new PHP_Depend_Util_Cache_Driver_Memory()); $analyzer = new PHP_Depend_Metrics_ClassLevel_Analyzer(); $analyzer->addAnalyzer($ccnAnalyzer); $analyzer->analyze($packages); $metrics = $analyzer->getNodeMetrics($class); self::assertEquals(2, $metrics['wmci']); }
/** * Analyzes the source code associated with the calling test method and * returns all measured metrics. * * @return mixed * @since 1.0.6 */ private function _calculateTraitMetrics() { $packages = $this->parseCodeResourceForTest(); $package = $packages->current(); $ccnAnalyzer = new PHP_Depend_Metrics_CyclomaticComplexity_Analyzer(); $ccnAnalyzer->setCache(new PHP_Depend_Util_Cache_Driver_Memory()); $analyzer = new PHP_Depend_Metrics_ClassLevel_Analyzer(); $analyzer->addAnalyzer($ccnAnalyzer); $analyzer->analyze($packages); return $analyzer->getNodeMetrics($package->getTraits()->current()); }
/** * testClassLevelAnalyzerNotRunsEndlessForDeepInterfaceHierarchy * * @return void */ public function testClassLevelAnalyzerNotRunsEndlessForDeepInterfaceHierarchy() { set_time_limit(5); $ccnAnalyzer = new PHP_Depend_Metrics_CyclomaticComplexity_Analyzer(); $ccnAnalyzer->setCache(new PHP_Depend_Util_Cache_Driver_Memory()); $analyzer = new PHP_Depend_Metrics_ClassLevel_Analyzer(); $analyzer->addAnalyzer($ccnAnalyzer); $analyzer->analyze($this->parseCodeResourceForTest()); }
/** * Analyzes the source code associated with the given test case and returns * a single measured metric. * * @param string $testCase Name of the calling test case. * @param string $metric Name of the searched metric. * * @return mixed */ private function _calculateMetric($testCase, $metric) { $packages = self::parseTestCaseSource($testCase); $package = $packages->current(); $analyzer = new PHP_Depend_Metrics_ClassLevel_Analyzer(); $analyzer->addAnalyzer(new PHP_Depend_Metrics_CyclomaticComplexity_Analyzer()); $analyzer->analyze($packages); $metrics = $analyzer->getNodeMetrics($package->getClasses()->current()); return $metrics[$metric]; }
/** * testAnalyzerCountsNumberOfMethodsForClassSize * * @return void * @group pdepend * @group pdepend::bugs * @group regressiontest */ public function testAnalyzerCountsNumberOfMethodsForClassSize() { $packages = self::parseCodeResourceForTest(); $class = $packages->current()->getClasses()->current(); $analyzer = new PHP_Depend_Metrics_ClassLevel_Analyzer(); $analyzer->addAnalyzer(new PHP_Depend_Metrics_CyclomaticComplexity_Analyzer()); $analyzer->analyze($packages); $metrics = $analyzer->getNodeMetrics($class); self::assertEquals(6, $metrics['csz']); }
/** * Tests the result of the phpunit logger with some real analyzers. * * @return void * @covers PHP_Depend_Log_Phpunit_Xml * @group pdepend * @group pdepend::logs * @group pdepend::logs::summary * @group unittest */ public function testPHPUnitLoggerResult() { $packages = self::parseTestCaseSource(__METHOD__); $logger = new PHP_Depend_Log_Phpunit_Xml(); $logger->setLogFile($this->_tempFile); $logger->setCode($packages); $analyzer0 = new PHP_Depend_Metrics_CyclomaticComplexity_Analyzer(); $analyzer0->analyze($packages); $analyzer1 = new PHP_Depend_Metrics_ClassLevel_Analyzer(); $analyzer1->addAnalyzer($analyzer0); $analyzer1->analyze($packages); $analyzer2 = new PHP_Depend_Metrics_CodeRank_Analyzer(); $analyzer2->analyze($packages); $analyzer3 = new PHP_Depend_Metrics_Coupling_Analyzer(); $analyzer3->analyze($packages); $analyzer4 = new PHP_Depend_Metrics_Hierarchy_Analyzer(); $analyzer4->analyze($packages); $analyzer5 = new PHP_Depend_Metrics_Inheritance_Analyzer(); $analyzer5->analyze($packages); $analyzer6 = new PHP_Depend_Metrics_NodeCount_Analyzer(); $analyzer6->analyze($packages); $analyzer7 = new PHP_Depend_Metrics_NodeLoc_Analyzer(); $analyzer7->analyze($packages); $logger->log($analyzer0); $logger->log($analyzer1); $logger->log($analyzer2); $logger->log($analyzer3); $logger->log($analyzer4); $logger->log($analyzer5); $logger->log($analyzer6); $logger->log($analyzer7); $logger->close(); $actual = file_get_contents($this->_tempFile); $expected = $this->_loadExpected('phpunit-log.xml'); $this->assertXmlStringEqualsXmlString($expected, $actual); }