/**
  * 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']);
 }
Exemple #2
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];
 }
Exemple #3
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());
 }
 /**
  * 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']);
 }