/**
  * 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']);
 }
Example #2
0
 /**
  * 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());
 }
Example #4
0
 /**
  * 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']);
 }
Example #6
0
 /**
  * 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);
 }