public function testCustomDumper() { $output = ''; $lineDumper = function ($line) use(&$output) { $output .= $line; }; $dumper = new HtmlDumper($lineDumper); $dumper->setDumpHeader(''); $dumper->setDumpBoundaries('<pre class=sf-dump-test id=%s data-indent-pad="%s">', '</pre><script>Sfdump("%s")</script>'); $extension = new DumpExtension(new VarCloner(), $dumper); $twig = new \Twig_Environment($this->getMockBuilder('Twig_LoaderInterface')->getMock(), array('debug' => true, 'cache' => false, 'optimizations' => 0)); $dump = $extension->dump($twig, array(), 'foo'); $dump = preg_replace('/sf-dump-\\d+/', 'sf-dump', $dump); $this->assertEquals('<pre class=sf-dump-test id=sf-dump data-indent-pad=" ">"' . "<span class=sf-dump-str title=\"3 characters\">foo</span>\"\n" . "</pre><script>Sfdump(\"sf-dump\")</script>\n", $dump, 'Custom dumper should be used to dump data.'); $this->assertEmpty($output, 'Dumper output should be ignored.'); }
/** * Constructor. * * @param ClonerInterface $cloner * @param DataDumperInterface $dumper * @param Users $users * @param boolean $debugShowLoggedoff */ public function __construct(ClonerInterface $cloner, DataDumperInterface $dumper, Users $users, $debugShowLoggedoff) { parent::__construct($cloner); $this->cloner = $cloner; $this->dumper = $dumper; $this->users = $users; $this->debugShowLoggedoff = $debugShowLoggedoff; }
/** * Constructor. * * @param ClonerInterface $cloner * @param DataDumperInterface|null $dumper */ public function __construct(ClonerInterface $cloner, DataDumperInterface $dumper = null) { parent::__construct($cloner); $this->dumper = $dumper ?: new HtmlDumper(); $this->cloner = $cloner; }