[DoctrineBridge] Fix log of non utf8 data
This commit is contained in:
parent
1da896dc7e
commit
a0709fc365
@ -41,7 +41,7 @@ class DbalLogger extends DebugStack
|
|||||||
parent::startQuery($sql, $params, $types);
|
parent::startQuery($sql, $params, $types);
|
||||||
|
|
||||||
if (null !== $this->logger) {
|
if (null !== $this->logger) {
|
||||||
$this->log($sql.' ('.json_encode($params).')');
|
$this->log($sql.' ('.@json_encode($params).')');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,39 @@
|
|||||||
|
<?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\Tests\Bridge\Doctrine\Logger;
|
||||||
|
|
||||||
|
|
||||||
|
class DbalLoggerTest extends \PHPUnit_Framework_TestCase
|
||||||
|
{
|
||||||
|
public function testLogNonUtf8()
|
||||||
|
{
|
||||||
|
$logger = $this->getMock('Symfony\\Component\\HttpKernel\\Log\\LoggerInterface');
|
||||||
|
|
||||||
|
$dbalLogger = $this
|
||||||
|
->getMockBuilder('Symfony\\Bridge\\Doctrine\\Logger\\DbalLogger')
|
||||||
|
->setConstructorArgs(array($logger, null))
|
||||||
|
->setMethods(array('log'))
|
||||||
|
->getMock()
|
||||||
|
;
|
||||||
|
|
||||||
|
$dbalLogger
|
||||||
|
->expects($this->once())
|
||||||
|
->method('log')
|
||||||
|
->with('SQL ({"utf8":"foo","nonutf8":null})')
|
||||||
|
;
|
||||||
|
|
||||||
|
$dbalLogger->startQuery('SQL', array(
|
||||||
|
'utf8' => 'foo',
|
||||||
|
'nonutf8' => "\x7F\xFF"
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user