| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 | 
							- <?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 PHPUnit\Framework\TestCase;
 
- use Symfony\Component\Debug\Exception\OutOfMemoryException;
 
- use Symfony\Component\Debug\ExceptionHandler;
 
- use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
 
- use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
 
- require_once __DIR__.'/HeaderMock.php';
 
- class ExceptionHandlerTest extends TestCase
 
- {
 
-     protected function setUp()
 
-     {
 
-         testHeader();
 
-     }
 
-     protected function tearDown()
 
-     {
 
-         testHeader();
 
-     }
 
-     public function testDebug()
 
-     {
 
-         $handler = new ExceptionHandler(false);
 
-         ob_start();
 
-         $handler->sendPhpResponse(new \RuntimeException('Foo'));
 
-         $response = ob_get_clean();
 
-         $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response);
 
-         $this->assertNotContains('<h2 class="block_exception clear_fix">', $response);
 
-         $handler = new ExceptionHandler(true);
 
-         ob_start();
 
-         $handler->sendPhpResponse(new \RuntimeException('Foo'));
 
-         $response = ob_get_clean();
 
-         $this->assertContains('<h1>Whoops, looks like something went wrong.</h1>', $response);
 
-         $this->assertContains('<h2 class="block_exception clear_fix">', $response);
 
-     }
 
-     public function testStatusCode()
 
-     {
 
-         $handler = new ExceptionHandler(false, 'iso8859-1');
 
-         ob_start();
 
-         $handler->sendPhpResponse(new NotFoundHttpException('Foo'));
 
-         $response = ob_get_clean();
 
-         $this->assertContains('Sorry, the page you are looking for could not be found.', $response);
 
-         $expectedHeaders = array(
 
-             array('HTTP/1.0 404', true, null),
 
-             array('Content-Type: text/html; charset=iso8859-1', true, null),
 
-         );
 
-         $this->assertSame($expectedHeaders, testHeader());
 
-     }
 
-     public function testHeaders()
 
-     {
 
-         $handler = new ExceptionHandler(false, 'iso8859-1');
 
-         ob_start();
 
-         $handler->sendPhpResponse(new MethodNotAllowedHttpException(array('POST')));
 
-         $response = ob_get_clean();
 
-         $expectedHeaders = array(
 
-             array('HTTP/1.0 405', true, null),
 
-             array('Allow: POST', false, null),
 
-             array('Content-Type: text/html; charset=iso8859-1', true, null),
 
-         );
 
-         $this->assertSame($expectedHeaders, testHeader());
 
-     }
 
-     public function testNestedExceptions()
 
-     {
 
-         $handler = new ExceptionHandler(true);
 
-         ob_start();
 
-         $handler->sendPhpResponse(new \RuntimeException('Foo', 0, new \RuntimeException('Bar')));
 
-         $response = ob_get_clean();
 
-         $this->assertStringMatchesFormat('%A<span class="exception_message">Foo</span>%A<span class="exception_message">Bar</span>%A', $response);
 
-     }
 
-     public function testHandle()
 
-     {
 
-         $exception = new \Exception('foo');
 
-         $handler = $this->getMockBuilder('Symfony\Component\Debug\ExceptionHandler')->setMethods(array('sendPhpResponse'))->getMock();
 
-         $handler
 
-             ->expects($this->exactly(2))
 
-             ->method('sendPhpResponse');
 
-         $handler->handle($exception);
 
-         $that = $this;
 
-         $handler->setHandler(function ($e) use ($exception, $that) {
 
-             $that->assertSame($exception, $e);
 
-         });
 
-         $handler->handle($exception);
 
-     }
 
-     public function testHandleOutOfMemoryException()
 
-     {
 
-         $exception = new OutOfMemoryException('foo', 0, E_ERROR, __FILE__, __LINE__);
 
-         $handler = $this->getMockBuilder('Symfony\Component\Debug\ExceptionHandler')->setMethods(array('sendPhpResponse'))->getMock();
 
-         $handler
 
-             ->expects($this->once())
 
-             ->method('sendPhpResponse');
 
-         $that = $this;
 
-         $handler->setHandler(function ($e) use ($that) {
 
-             $that->fail('OutOfMemoryException should bypass the handler');
 
-         });
 
-         $handler->handle($exception);
 
-     }
 
- }
 
 
  |