fix testing deprecation messages
* always restore the previous error handler * throw `LogicExcetion` when unexpected error type is triggered
This commit is contained in:
parent
243e59c108
commit
0df544ff4c
@ -91,7 +91,9 @@ class TemplateNameParserTest extends TestCase
|
|||||||
$deprecations = array();
|
$deprecations = array();
|
||||||
set_error_handler(function ($type, $msg) use (&$deprecations) {
|
set_error_handler(function ($type, $msg) use (&$deprecations) {
|
||||||
if (E_USER_DEPRECATED !== $type) {
|
if (E_USER_DEPRECATED !== $type) {
|
||||||
throw new \LogicException(sprintf('Unexpected error: "%s".', $msg));
|
restore_error_handler();
|
||||||
|
|
||||||
|
return call_user_func_array('PHPUnit_Util_ErrorHandler::handleError', func_get_args());
|
||||||
}
|
}
|
||||||
|
|
||||||
$deprecations[] = $msg;
|
$deprecations[] = $msg;
|
||||||
|
@ -519,20 +519,24 @@ class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$deprecations = array();
|
$deprecations = array();
|
||||||
set_error_handler(function ($type, $msg) use (&$deprecations) {
|
set_error_handler(function ($type, $msg) use (&$deprecations) {
|
||||||
if (E_USER_DEPRECATED === $type) {
|
if (E_USER_DEPRECATED !== $type) {
|
||||||
$deprecations[] = $msg;
|
restore_error_handler();
|
||||||
|
|
||||||
|
return call_user_func_array('PHPUnit_Util_ErrorHandler::handleError', func_get_args());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$deprecations[] = $msg;
|
||||||
});
|
});
|
||||||
|
|
||||||
$loader->load('legacy_invalid_alias_definition.xml');
|
$loader->load('legacy_invalid_alias_definition.xml');
|
||||||
|
|
||||||
|
restore_error_handler();
|
||||||
|
|
||||||
$this->assertTrue($container->has('bar'));
|
$this->assertTrue($container->has('bar'));
|
||||||
|
|
||||||
$this->assertCount(3, $deprecations);
|
$this->assertCount(3, $deprecations);
|
||||||
$this->assertContains('Using the attribute "class" is deprecated for alias definition "bar"', $deprecations[0]);
|
$this->assertContains('Using the attribute "class" is deprecated for alias definition "bar"', $deprecations[0]);
|
||||||
$this->assertContains('Using the element "tag" is deprecated for alias definition "bar"', $deprecations[1]);
|
$this->assertContains('Using the element "tag" is deprecated for alias definition "bar"', $deprecations[1]);
|
||||||
$this->assertContains('Using the element "factory" is deprecated for alias definition "bar"', $deprecations[2]);
|
$this->assertContains('Using the element "factory" is deprecated for alias definition "bar"', $deprecations[2]);
|
||||||
|
|
||||||
restore_error_handler();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -32,9 +32,13 @@ class EsiFragmentRendererTest extends \PHPUnit_Framework_TestCase
|
|||||||
{
|
{
|
||||||
$deprecations = array();
|
$deprecations = array();
|
||||||
set_error_handler(function ($type, $message) use (&$deprecations) {
|
set_error_handler(function ($type, $message) use (&$deprecations) {
|
||||||
if (E_USER_DEPRECATED === $type) {
|
if (E_USER_DEPRECATED !== $type) {
|
||||||
$deprecations[] = $message;
|
restore_error_handler();
|
||||||
|
|
||||||
|
return call_user_func_array('PHPUnit_Util_ErrorHandler::handleError', func_get_args());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$deprecations[] = $message;
|
||||||
});
|
});
|
||||||
|
|
||||||
$strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true), new UriSigner('foo'));
|
$strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true), new UriSigner('foo'));
|
||||||
@ -45,10 +49,10 @@ class EsiFragmentRendererTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$strategy->render($reference, $request);
|
$strategy->render($reference, $request);
|
||||||
|
|
||||||
|
restore_error_handler();
|
||||||
|
|
||||||
$this->assertCount(1, $deprecations);
|
$this->assertCount(1, $deprecations);
|
||||||
$this->assertContains('Passing objects as part of URI attributes to the ESI and SSI rendering strategies is deprecated', $deprecations[0]);
|
$this->assertContains('Passing objects as part of URI attributes to the ESI and SSI rendering strategies is deprecated', $deprecations[0]);
|
||||||
|
|
||||||
restore_error_handler();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testRender()
|
public function testRender()
|
||||||
|
@ -260,9 +260,13 @@ class InlineTest extends \PHPUnit_Framework_TestCase
|
|||||||
{
|
{
|
||||||
$deprecations = array();
|
$deprecations = array();
|
||||||
set_error_handler(function ($type, $msg) use (&$deprecations) {
|
set_error_handler(function ($type, $msg) use (&$deprecations) {
|
||||||
if (E_USER_DEPRECATED === $type) {
|
if (E_USER_DEPRECATED !== $type) {
|
||||||
$deprecations[] = $msg;
|
restore_error_handler();
|
||||||
|
|
||||||
|
return call_user_func_array('PHPUnit_Util_ErrorHandler::handleError', func_get_args());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$deprecations[] = $msg;
|
||||||
});
|
});
|
||||||
|
|
||||||
Inline::parse('{ foo: %foo }');
|
Inline::parse('{ foo: %foo }');
|
||||||
|
Reference in New Issue
Block a user