class PHPUnit_Util_TestDox_NamePrettifier in Zircon Profile 8.0
Same name and namespace in other branches
- 8 vendor/phpunit/phpunit/src/Util/TestDox/NamePrettifier.php \PHPUnit_Util_TestDox_NamePrettifier
Prettifies class and method names for use in TestDox documentation.
@since Class available since Release 2.1.0
Hierarchy
Expanded class hierarchy of PHPUnit_Util_TestDox_NamePrettifier
File
- vendor/
phpunit/ phpunit/ src/ Util/ TestDox/ NamePrettifier.php, line 16
View source
class PHPUnit_Util_TestDox_NamePrettifier {
/**
* @var string
*/
protected $prefix = 'Test';
/**
* @var string
*/
protected $suffix = 'Test';
/**
* @var array
*/
protected $strings = array();
/**
* Prettifies the name of a test class.
*
* @param string $name
* @return string
*/
public function prettifyTestClass($name) {
$title = $name;
if ($this->suffix !== null && $this->suffix == substr($name, -1 * strlen($this->suffix))) {
$title = substr($title, 0, strripos($title, $this->suffix));
}
if ($this->prefix !== null && $this->prefix == substr($name, 0, strlen($this->prefix))) {
$title = substr($title, strlen($this->prefix));
}
if (substr($title, 0, 1) == '\\') {
$title = substr($title, 1);
}
return $title;
}
/**
* Prettifies the name of a test method.
*
* @param string $name
* @return string
*/
public function prettifyTestMethod($name) {
$buffer = '';
if (!is_string($name) || strlen($name) == 0) {
return $buffer;
}
$string = preg_replace('#\\d+$#', '', $name, -1, $count);
if (in_array($string, $this->strings)) {
$name = $string;
}
elseif ($count == 0) {
$this->strings[] = $string;
}
if (strpos($name, '_') !== false) {
return str_replace('_', ' ', $name);
}
$max = strlen($name);
if (substr($name, 0, 4) == 'test') {
$offset = 4;
}
else {
$offset = 0;
$name[0] = strtoupper($name[0]);
}
$wasNumeric = false;
for ($i = $offset; $i < $max; $i++) {
if ($i > $offset && ord($name[$i]) >= 65 && ord($name[$i]) <= 90) {
$buffer .= ' ' . strtolower($name[$i]);
}
else {
$isNumeric = is_numeric($name[$i]);
if (!$wasNumeric && $isNumeric) {
$buffer .= ' ';
$wasNumeric = true;
}
if ($wasNumeric && !$isNumeric) {
$wasNumeric = false;
}
$buffer .= $name[$i];
}
}
return $buffer;
}
/**
* Sets the prefix of test names.
*
* @param string $prefix
*/
public function setPrefix($prefix) {
$this->prefix = $prefix;
}
/**
* Sets the suffix of test names.
*
* @param string $suffix
*/
public function setSuffix($suffix) {
$this->suffix = $suffix;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
PHPUnit_Util_TestDox_NamePrettifier:: |
protected | property | ||
PHPUnit_Util_TestDox_NamePrettifier:: |
protected | property | ||
PHPUnit_Util_TestDox_NamePrettifier:: |
protected | property | ||
PHPUnit_Util_TestDox_NamePrettifier:: |
public | function | Prettifies the name of a test class. | |
PHPUnit_Util_TestDox_NamePrettifier:: |
public | function | Prettifies the name of a test method. | |
PHPUnit_Util_TestDox_NamePrettifier:: |
public | function | Sets the prefix of test names. | |
PHPUnit_Util_TestDox_NamePrettifier:: |
public | function | Sets the suffix of test names. |