示例#1
0
文件: File.php 项目: swk/bluebox
 protected function processFunctions()
 {
     $functions = PHPUnit_Util_Class::getFunctionsInFile($this->getPath());
     if (count($functions) > 0 && !isset($this->classes['*'])) {
         $this->classes['*'] = array('methods' => array(), 'startLine' => 0, 'executableLines' => 0, 'executedLines' => 0);
     }
     foreach ($functions as $function) {
         $functionName = $function->getName();
         $functionStartLine = $function->getStartLine();
         $functionEndLine = $function->getEndLine();
         $this->classes['*']['methods'][$functionName] = array('startLine' => $functionStartLine, 'executableLines' => 0, 'executedLines' => 0);
         $this->startLines[$functionStartLine] =& $this->classes['*']['methods'][$functionName];
         $this->endLines[$functionEndLine] =& $this->classes['*']['methods'][$functionName];
         $this->numMethods++;
     }
 }
示例#2
0
文件: File.php 项目: cjmi/miniblog
 /**
  * Constructor.
  *
  * @param  string $filename
  * @param  array  $codeCoverage
  * @throws RuntimeException
  */
 protected function __construct($filename, &$codeCoverage = array())
 {
     if (!file_exists($filename)) {
         throw new RuntimeException(sprintf('File "%s" not found.', $filename));
     }
     $this->filename = $filename;
     $this->lines = file($filename);
     $this->tokens = token_get_all(file_get_contents($filename));
     $this->countLines();
     $this->setCoverage($codeCoverage);
     foreach (PHPUnit_Util_Class::getClassesInFile($filename) as $class) {
         $this->classes[$class->getName()] = PHPUnit_Util_Metrics_Class::factory($class, $codeCoverage);
     }
     foreach (PHPUnit_Util_Class::getFunctionsInFile($filename) as $function) {
         $this->functions[$function->getName()] = PHPUnit_Util_Metrics_Function::factory($function, $codeCoverage);
     }
 }