summaryrefslogtreecommitdiff
path: root/vendor/symfony/debug/Tests
diff options
context:
space:
mode:
authorGreg Roach <fisharebest@webtrees.net>2019-08-05 20:42:16 +0100
committerGreg Roach <fisharebest@webtrees.net>2019-08-05 20:42:16 +0100
commit476e0b588a14416aec7c66ec164d42c88feb20c7 (patch)
treeeef36ca3f612b99c02c6a2c0dcea692f5ee7d262 /vendor/symfony/debug/Tests
parentb092a991966b26dd39ccaaf816cf80a5c0379ded (diff)
downloadwebtrees-476e0b588a14416aec7c66ec164d42c88feb20c7.tar.gz
webtrees-476e0b588a14416aec7c66ec164d42c88feb20c7.tar.bz2
webtrees-476e0b588a14416aec7c66ec164d42c88feb20c7.zip
Update dependencies
Diffstat (limited to 'vendor/symfony/debug/Tests')
-rw-r--r--vendor/symfony/debug/Tests/ErrorHandlerTest.php11
-rw-r--r--vendor/symfony/debug/Tests/ExceptionHandlerTest.php66
-rw-r--r--vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php22
-rw-r--r--vendor/symfony/debug/Tests/MockExceptionHandler.php24
4 files changed, 65 insertions, 58 deletions
diff --git a/vendor/symfony/debug/Tests/ErrorHandlerTest.php b/vendor/symfony/debug/Tests/ErrorHandlerTest.php
index f758d21e0e..9ceeb0f097 100644
--- a/vendor/symfony/debug/Tests/ErrorHandlerTest.php
+++ b/vendor/symfony/debug/Tests/ErrorHandlerTest.php
@@ -70,8 +70,8 @@ class ErrorHandlerTest extends TestCase
public function testErrorGetLast()
{
- $handler = ErrorHandler::register();
$logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
+ $handler = ErrorHandler::register();
$handler->setDefaultLogger($logger);
$handler->screamAt(E_ALL);
@@ -143,9 +143,8 @@ class ErrorHandlerTest extends TestCase
public function testDefaultLogger()
{
try {
- $handler = ErrorHandler::register();
-
$logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
+ $handler = ErrorHandler::register();
$handler->setDefaultLogger($logger, E_NOTICE);
$handler->setDefaultLogger($logger, [E_USER_NOTICE => LogLevel::CRITICAL]);
@@ -331,12 +330,11 @@ class ErrorHandlerTest extends TestCase
public function testHandleException()
{
try {
+ $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
$handler = ErrorHandler::register();
$exception = new \Exception('foo');
- $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
-
$logArgCheck = function ($level, $message, $context) {
$this->assertSame('Uncaught Exception: foo', $message);
$this->assertArrayHasKey('exception', $context);
@@ -442,6 +440,7 @@ class ErrorHandlerTest extends TestCase
public function testHandleFatalError()
{
try {
+ $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
$handler = ErrorHandler::register();
$error = [
@@ -451,8 +450,6 @@ class ErrorHandlerTest extends TestCase
'line' => 123,
];
- $logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
-
$logArgCheck = function ($level, $message, $context) {
$this->assertEquals('Fatal Parse Error: foo', $message);
$this->assertArrayHasKey('exception', $context);
diff --git a/vendor/symfony/debug/Tests/ExceptionHandlerTest.php b/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
index 4910fe5ec9..3a9af8b6b8 100644
--- a/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
+++ b/vendor/symfony/debug/Tests/ExceptionHandlerTest.php
@@ -85,7 +85,7 @@ content="0;url=data:text/html;base64,PHNjcmlwdD5hbGVydCgndGVzdDMnKTwvc2NyaXB0Pg"
ob_start();
$handler->sendPhpResponse(new MethodNotAllowedHttpException(['POST']));
- $response = ob_get_clean();
+ ob_get_clean();
$expectedHeaders = [
['HTTP/1.0 405', true, null],
@@ -108,35 +108,65 @@ content="0;url=data:text/html;base64,PHNjcmlwdD5hbGVydCgndGVzdDMnKTwvc2NyaXB0Pg"
public function testHandle()
{
- $exception = new \Exception('foo');
+ $handler = new ExceptionHandler(true);
+ ob_start();
- $handler = $this->getMockBuilder('Symfony\Component\Debug\ExceptionHandler')->setMethods(['sendPhpResponse'])->getMock();
- $handler
- ->expects($this->exactly(2))
- ->method('sendPhpResponse');
+ $handler->handle(new \Exception('foo'));
- $handler->handle($exception);
+ $this->assertThatTheExceptionWasOutput(ob_get_clean(), \Exception::class, 'Exception', 'foo');
+ }
- $handler->setHandler(function ($e) use ($exception) {
- $this->assertSame($exception, $e);
+ public function testHandleWithACustomHandlerThatOutputsSomething()
+ {
+ $handler = new ExceptionHandler(true);
+ ob_start();
+ $handler->setHandler(function () {
+ echo 'ccc';
});
- $handler->handle($exception);
+ $handler->handle(new \Exception());
+ ob_end_flush(); // Necessary because of this PHP bug : https://bugs.php.net/bug.php?id=76563
+ $this->assertSame('ccc', ob_get_clean());
}
- public function testHandleOutOfMemoryException()
+ public function testHandleWithACustomHandlerThatOutputsNothing()
+ {
+ $handler = new ExceptionHandler(true);
+ $handler->setHandler(function () {});
+
+ $handler->handle(new \Exception('ccc'));
+
+ $this->assertThatTheExceptionWasOutput(ob_get_clean(), \Exception::class, 'Exception', 'ccc');
+ }
+
+ public function testHandleWithACustomHandlerThatFails()
{
- $exception = new OutOfMemoryException('foo', 0, E_ERROR, __FILE__, __LINE__);
+ $handler = new ExceptionHandler(true);
+ $handler->setHandler(function () {
+ throw new \RuntimeException();
+ });
- $handler = $this->getMockBuilder('Symfony\Component\Debug\ExceptionHandler')->setMethods(['sendPhpResponse'])->getMock();
- $handler
- ->expects($this->once())
- ->method('sendPhpResponse');
+ $handler->handle(new \Exception('ccc'));
- $handler->setHandler(function ($e) {
+ $this->assertThatTheExceptionWasOutput(ob_get_clean(), \Exception::class, 'Exception', 'ccc');
+ }
+
+ public function testHandleOutOfMemoryException()
+ {
+ $handler = new ExceptionHandler(true);
+ ob_start();
+ $handler->setHandler(function () {
$this->fail('OutOfMemoryException should bypass the handler');
});
- $handler->handle($exception);
+ $handler->handle(new OutOfMemoryException('foo', 0, E_ERROR, __FILE__, __LINE__));
+
+ $this->assertThatTheExceptionWasOutput(ob_get_clean(), OutOfMemoryException::class, 'OutOfMemoryException', 'foo');
+ }
+
+ private function assertThatTheExceptionWasOutput($content, $expectedClass, $expectedTitle, $expectedMessage)
+ {
+ $this->assertContains(sprintf('<span class="exception_title"><abbr title="%s">%s</abbr></span>', $expectedClass, $expectedTitle), $content);
+ $this->assertContains(sprintf('<p class="break-long-words trace-message">%s</p>', $expectedMessage), $content);
}
}
diff --git a/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php b/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
index 8e615ac640..9a56b3b4ec 100644
--- a/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
+++ b/vendor/symfony/debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
@@ -61,7 +61,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
}
$this->assertInstanceOf('Symfony\Component\Debug\Exception\ClassNotFoundException', $exception);
- $this->assertSame($translatedMessage, $exception->getMessage());
+ $this->assertRegExp($translatedMessage, $exception->getMessage());
$this->assertSame($error['type'], $exception->getSeverity());
$this->assertSame($error['file'], $exception->getFile());
$this->assertSame($error['line'], $exception->getLine());
@@ -71,6 +71,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
{
$autoloader = new ComposerClassLoader();
$autoloader->add('Symfony\Component\Debug\Exception\\', realpath(__DIR__.'/../../Exception'));
+ $autoloader->add('Symfony_Component_Debug_Tests_Fixtures', realpath(__DIR__.'/../../Tests/Fixtures'));
$debugClassLoader = new DebugClassLoader([$autoloader, 'loadClass']);
@@ -82,7 +83,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'WhizBangFactory\' not found',
],
- "Attempted to load class \"WhizBangFactory\" from the global namespace.\nDid you forget a \"use\" statement?",
+ "/^Attempted to load class \"WhizBangFactory\" from the global namespace.\nDid you forget a \"use\" statement\?$/",
],
[
[
@@ -91,7 +92,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'Foo\\Bar\\WhizBangFactory\' not found',
],
- "Attempted to load class \"WhizBangFactory\" from namespace \"Foo\\Bar\".\nDid you forget a \"use\" statement for another namespace?",
+ "/^Attempted to load class \"WhizBangFactory\" from namespace \"Foo\\\\Bar\".\nDid you forget a \"use\" statement for another namespace\?$/",
],
[
[
@@ -100,7 +101,8 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'UndefinedFunctionException\' not found',
],
- "Attempted to load class \"UndefinedFunctionException\" from the global namespace.\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
+ "/^Attempted to load class \"UndefinedFunctionException\" from the global namespace.\nDid you forget a \"use\" statement for .*\"Symfony\\\\Component\\\\Debug\\\\Exception\\\\UndefinedFunctionException\"\?$/",
+ [$debugClassLoader, 'loadClass'],
],
[
[
@@ -109,7 +111,8 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'PEARClass\' not found',
],
- "Attempted to load class \"PEARClass\" from the global namespace.\nDid you forget a \"use\" statement for \"Symfony_Component_Debug_Tests_Fixtures_PEARClass\"?",
+ "/^Attempted to load class \"PEARClass\" from the global namespace.\nDid you forget a \"use\" statement for \"Symfony_Component_Debug_Tests_Fixtures_PEARClass\"\?$/",
+ [$debugClassLoader, 'loadClass'],
],
[
[
@@ -118,7 +121,8 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
],
- "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
+ "/^Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\\\\Bar\".\nDid you forget a \"use\" statement for .*\"Symfony\\\\Component\\\\Debug\\\\Exception\\\\UndefinedFunctionException\"\?$/",
+ [$debugClassLoader, 'loadClass'],
],
[
[
@@ -127,7 +131,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
],
- "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
+ "/^Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\\\\Bar\".\nDid you forget a \"use\" statement for \"Symfony\\\\Component\\\\Debug\\\\Exception\\\\UndefinedFunctionException\"\?$/",
[$autoloader, 'loadClass'],
],
[
@@ -137,7 +141,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
],
- "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
+ "/^Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\\\\Bar\".\nDid you forget a \"use\" statement for \"Symfony\\\\Component\\\\Debug\\\\Exception\\\\UndefinedFunctionException\"\?/",
[$debugClassLoader, 'loadClass'],
],
[
@@ -147,7 +151,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
'file' => 'foo.php',
'message' => 'Class \'Foo\\Bar\\UndefinedFunctionException\' not found',
],
- "Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\\Bar\".\nDid you forget a \"use\" statement for another namespace?",
+ "/^Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\\\\Bar\".\nDid you forget a \"use\" statement for another namespace\?$/",
function ($className) { /* do nothing here */ },
],
];
diff --git a/vendor/symfony/debug/Tests/MockExceptionHandler.php b/vendor/symfony/debug/Tests/MockExceptionHandler.php
deleted file mode 100644
index 2d6ce564d2..0000000000
--- a/vendor/symfony/debug/Tests/MockExceptionHandler.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Debug\Tests;
-
-use Symfony\Component\Debug\ExceptionHandler;
-
-class MockExceptionHandler extends ExceptionHandler
-{
- public $e;
-
- public function handle(\Exception $e)
- {
- $this->e = $e;
- }
-}