public function testConfigure() { $prevDumper = $this->getDumpHandler(); $container = new ContainerBuilder(); $container->setDefinition('var_dumper.cloner', new Definition('Symfony\\Component\\HttpKernel\\Tests\\EventListener\\MockCloner')); $container->setDefinition('mock_dumper', new Definition('Symfony\\Component\\HttpKernel\\Tests\\EventListener\\MockDumper')); ob_start(); $exception = null; $listener = new DumpListener($container, 'mock_dumper'); try { $listener->configure(); $lazyDumper = $this->getDumpHandler(); VarDumper::dump('foo'); $loadedDumper = $this->getDumpHandler(); VarDumper::dump('bar'); $this->assertSame('+foo-+bar-', ob_get_clean()); $listenerReflector = new \ReflectionClass($listener); $lazyReflector = new \ReflectionFunction($lazyDumper); $loadedReflector = new \ReflectionFunction($loadedDumper); $this->assertSame($listenerReflector->getFilename(), $lazyReflector->getFilename()); $this->assertSame($listenerReflector->getFilename(), $loadedReflector->getFilename()); $this->assertGreaterThan($lazyReflector->getStartLine(), $loadedReflector->getStartLine()); } catch (\Exception $exception) { } VarDumper::setHandler($prevDumper); if (null !== $exception) { throw $exception; } }
public function testConfigure() { $prevDumper = VarDumper::setHandler('var_dump'); VarDumper::setHandler($prevDumper); $cloner = new MockCloner(); $dumper = new MockDumper(); ob_start(); $exception = null; $listener = new DumpListener($cloner, $dumper); try { $listener->configure(); VarDumper::dump('foo'); VarDumper::dump('bar'); $this->assertSame('+foo-+bar-', ob_get_clean()); } catch (\Exception $exception) { } VarDumper::setHandler($prevDumper); if (null !== $exception) { throw $exception; } }