Prettifies the name of a test method.
string $name:
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;
}
else {
if ($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;
}