Use a class name that does not actually exist
Using "Foo", a class name that corresponds to no less than 22 fixture classes, results in the first found "Foo" being loaded when one is found by the ClassNotFoundFatalErrorHandler error handler, I am not sure exactly why, but it is not really a big issue because this is a fatal error handler and execution is not supposed to continue after that. Except that is very much the case when running the whole test suite sequentially with ./phpunit . Then we arrive to the DI component test suite, and a failure happens because \\foo was not supposed to be defined: > Failed asserting that exception message 'The definition for "\foo" has > no class attribute, and appears to reference a class or interface in the > global namespace. Leaving out the "class" attribute is only allowed for > namespaced classes. Please specify the class attribute explicitly to get > rid of this error.' contains 'The definition for "\foo" has no class.'.
This commit is contained in:
parent
3e0b2354db
commit
a53e0fe1cd
@ -525,7 +525,7 @@ class ErrorHandlerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testHandleErrorException()
|
public function testHandleErrorException()
|
||||||
{
|
{
|
||||||
$exception = new \Error("Class 'Foo' not found");
|
$exception = new \Error("Class 'IReallyReallyDoNotExistAnywhereInTheRepositoryISwear' not found");
|
||||||
|
|
||||||
$handler = new ErrorHandler();
|
$handler = new ErrorHandler();
|
||||||
$handler->setExceptionHandler(function () use (&$args) {
|
$handler->setExceptionHandler(function () use (&$args) {
|
||||||
@ -535,7 +535,7 @@ class ErrorHandlerTest extends TestCase
|
|||||||
$handler->handleException($exception);
|
$handler->handleException($exception);
|
||||||
|
|
||||||
$this->assertInstanceOf('Symfony\Component\Debug\Exception\ClassNotFoundException', $args[0]);
|
$this->assertInstanceOf('Symfony\Component\Debug\Exception\ClassNotFoundException', $args[0]);
|
||||||
$this->assertStringStartsWith("Attempted to load class \"Foo\" from the global namespace.\nDid you forget a \"use\" statement", $args[0]->getMessage());
|
$this->assertStringStartsWith("Attempted to load class \"IReallyReallyDoNotExistAnywhereInTheRepositoryISwear\" from the global namespace.\nDid you forget a \"use\" statement", $args[0]->getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user