public function testNewClass()
{
// Not-new
$code = 'class not_new {}';
$this->assertNotSpot($code);
$table = TestHelper::fetchProperty($this->change, 'classTable');
if (is_null($table)) {
return;
}
foreach ($table as $name => $dummy) {
// Normal name
$code = sprintf('class %s {}', $name);
$this->assertHasSpot($code);
// Case Insensitive name
$code = sprintf('class %s {}', strtoupper($name));
$this->assertHasSpot($code);
// Namespaced
$code = sprintf('namespace Dummy; class %s {}', $name);
$this->assertNotSpot($code);
// Conditional name
// Removed, because of autoload it's too rare to see
// $code = sprintf("if (!class_exists('%s')) { class %s {} }", $name, $name);
// $this->assertNotSpot($code);
}
}