prettifyTestClass() public method

Prettifies the name of a test class.
public prettifyTestClass ( string $name ) : string
$name string
return string
Beispiel #1
0
 /**
  * A test started.
  *
  * @param PHPUnit_Framework_Test $test
  */
 public function startTest(PHPUnit_Framework_Test $test)
 {
     if (!$this->isOfInterest($test)) {
         return;
     }
     $class = get_class($test);
     if ($this->testClass != $class) {
         if ($this->testClass != '') {
             $this->doEndClass();
         }
         $classAnnotations = PHPUnit_Util_Test::parseTestMethodAnnotations($class);
         if (isset($classAnnotations['class']['testdox'][0])) {
             $this->currentTestClassPrettified = $classAnnotations['class']['testdox'][0];
         } else {
             $this->currentTestClassPrettified = $this->prettifier->prettifyTestClass($class);
         }
         $this->startClass($class);
         $this->testClass = $class;
         $this->tests = [];
     }
     $annotations = $test->getAnnotations();
     if (isset($annotations['method']['testdox'][0])) {
         $this->currentTestMethodPrettified = $annotations['method']['testdox'][0];
     } else {
         $this->currentTestMethodPrettified = $this->prettifier->prettifyTestMethod($test->getName(false));
     }
     $this->testStatus = PHPUnit_Runner_BaseTestRunner::STATUS_PASSED;
 }
Beispiel #2
0
 /**
  * A test started.
  *
  * @param  PHPUnit_Framework_Test $test
  */
 public function startTest(PHPUnit_Framework_Test $test)
 {
     if ($test instanceof $this->testTypeOfInterest) {
         $class = get_class($test);
         if ($this->testClass != $class) {
             if ($this->testClass != '') {
                 $this->doEndClass();
             }
             $this->currentTestClassPrettified = $this->prettifier->prettifyTestClass($class);
             $this->startClass($class);
             $this->testClass = $class;
             $this->tests = array();
         }
         $prettified = FALSE;
         if ($test instanceof PHPUnit_Framework_TestCase && !$test instanceof PHPUnit_Framework_Warning) {
             $annotations = $test->getAnnotations();
             if (isset($annotations['method']['testdox'][0])) {
                 $this->currentTestMethodPrettified = $annotations['method']['testdox'][0];
                 $prettified = TRUE;
             }
         }
         if (!$prettified) {
             $this->currentTestMethodPrettified = $this->prettifier->prettifyTestMethod($test->getName(FALSE));
         }
         $this->testStatus = PHPUnit_Runner_BaseTestRunner::STATUS_PASSED;
     }
 }
Beispiel #3
0
 /**
  * @access private
  * @since  Method available since Release 2.3.0
  */
 private function doEndClass()
 {
     foreach ($this->tests as $name => $data) {
         if ($data['failure'] == 0) {
             $this->onTest($name);
         }
     }
     $this->endClass($this->prettifier->prettifyTestClass($this->testClass));
 }
Beispiel #4
0
 /**
  * A test ended.
  *
  * @param PHPUnit_Framework_Test $test
  * @param float                  $time
  */
 public function endTest(PHPUnit_Framework_Test $test, $time)
 {
     if (!$test instanceof PHPUnit_Framework_TestCase) {
         return;
     }
     /* @var PHPUnit_Framework_TestCase $test */
     $groups = array_filter($test->getGroups(), function ($group) {
         if ($group == 'small' || $group == 'medium' || $group == 'large') {
             return false;
         }
         return true;
     });
     $node = $this->document->createElement('test');
     $node->setAttribute('className', get_class($test));
     $node->setAttribute('methodName', $test->getName());
     $node->setAttribute('prettifiedClassName', $this->prettifier->prettifyTestClass(get_class($test)));
     $node->setAttribute('prettifiedMethodName', $this->prettifier->prettifyTestMethod($test->getName()));
     $node->setAttribute('status', $test->getStatus());
     $node->setAttribute('time', $time);
     $node->setAttribute('size', $test->getSize());
     $node->setAttribute('groups', implode(',', $groups));
     $inlineAnnotations = PHPUnit_Util_Test::getInlineAnnotations(get_class($test), $test->getName());
     if (isset($inlineAnnotations['given']) && isset($inlineAnnotations['when']) && isset($inlineAnnotations['then'])) {
         $node->setAttribute('given', $inlineAnnotations['given']['value']);
         $node->setAttribute('givenStartLine', $inlineAnnotations['given']['line']);
         $node->setAttribute('when', $inlineAnnotations['when']['value']);
         $node->setAttribute('whenStartLine', $inlineAnnotations['when']['line']);
         $node->setAttribute('then', $inlineAnnotations['then']['value']);
         $node->setAttribute('thenStartLine', $inlineAnnotations['then']['line']);
     }
     if ($this->exception !== null) {
         if ($this->exception instanceof PHPUnit_Framework_Exception) {
             $steps = $this->exception->getSerializableTrace();
         } else {
             $steps = $this->exception->getTrace();
         }
         $class = new ReflectionClass($test);
         $file = $class->getFileName();
         foreach ($steps as $step) {
             if (isset($step['file']) && $step['file'] == $file) {
                 $node->setAttribute('exceptionLine', $step['line']);
                 break;
             }
         }
         $node->setAttribute('exceptionMessage', $this->exception->getMessage());
     }
     $this->root->appendChild($node);
 }
Beispiel #5
0
 /**
  * A test started.
  *
  * @param  PHPUnit_Framework_Test $test
  */
 public function startTest(PHPUnit_Framework_Test $test)
 {
     if ($test instanceof $this->testTypeOfInterest) {
         $class = get_class($test);
         if ($this->testClass != $class) {
             if ($this->testClass != '') {
                 $this->doEndClass();
             }
             $this->currentTestClassPrettified = $this->prettifier->prettifyTestClass($class);
             $this->startClass($class);
             $this->testClass = $class;
             $this->tests = array();
         }
         $this->currentTestMethodPrettified = $this->prettifier->prettifyTestMethod($test->getName());
         $this->testStatus = PHPUnit_Runner_BaseTestRunner::STATUS_PASSED;
     }
 }
Beispiel #6
0
 /**
  * Prettifies the name of a test class.
  *
  * This method will return $testClass unchanged if human-readable names
  * are disabled.
  *
  * @param string $testClassName a camel-case test class name, must not be empty
  *
  * @return string the prettified test class name, will not be empty
  */
 protected function prettifyTestClass($testClassName)
 {
     if (!$this->useHumanReadableTextFormat) {
         return $testClassName;
     }
     $testClassNameWithoutPrefixOrSuffix = preg_replace('/(tx_|Tx_)?(.+)(Test|_testcase)$/', '\\2', $testClassName);
     $testClassNameWithoutUnderScores = str_replace('_', ' ', $testClassNameWithoutPrefixOrSuffix);
     $this->namePrettifier->setPrefix(null);
     $this->namePrettifier->setSuffix(null);
     return $this->namePrettifier->prettifyTestClass($testClassNameWithoutUnderScores);
 }