bug #16912 [Translation][Writer] avoid calling setBackup if the dumper is not FileDumper (aitboudad)
This PR was merged into the 2.7 branch.
Discussion
----------
[Translation][Writer] avoid calling setBackup if the dumper is not FileDumper
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | ~
| License | MIT
| Doc PR | n/a
Commits
-------
369b2d4
[Translation][Writer] avoid calling setBackup if the dumper is not an instance of FileDumper.
This commit is contained in:
commit
9c5a6f5770
@ -0,0 +1,47 @@
|
|||||||
|
<?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\Translation\Tests\Writer;
|
||||||
|
|
||||||
|
use Symfony\Component\Translation\MessageCatalogue;
|
||||||
|
use Symfony\Component\Translation\Writer\TranslationWriter;
|
||||||
|
|
||||||
|
class TranslationWriterTest extends \PHPUnit_Framework_TestCase
|
||||||
|
{
|
||||||
|
public function testWriteTranslations()
|
||||||
|
{
|
||||||
|
$dumper = $this->getMock('Symfony\Component\Translation\Dumper\DumperInterface');
|
||||||
|
$dumper
|
||||||
|
->expects($this->once())
|
||||||
|
->method('dump');
|
||||||
|
|
||||||
|
$writer = new TranslationWriter();
|
||||||
|
$writer->addDumper('test', $dumper);
|
||||||
|
$writer->writeTranslations(new MessageCatalogue(array()), 'test');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testDisableBackup()
|
||||||
|
{
|
||||||
|
$dumper = $this->getMock('Symfony\Component\Translation\Dumper\DumperInterface');
|
||||||
|
$dumper
|
||||||
|
->expects($this->never())
|
||||||
|
->method('setBackup');
|
||||||
|
$phpDumper = $this->getMock('Symfony\Component\Translation\Dumper\PhpFileDumper');
|
||||||
|
$phpDumper
|
||||||
|
->expects($this->once())
|
||||||
|
->method('setBackup');
|
||||||
|
|
||||||
|
$writer = new TranslationWriter();
|
||||||
|
$writer->addDumper('test', $dumper);
|
||||||
|
$writer->addDumper('php', $phpDumper);
|
||||||
|
$writer->disableBackup();
|
||||||
|
}
|
||||||
|
}
|
@ -45,9 +45,11 @@ class TranslationWriter
|
|||||||
public function disableBackup()
|
public function disableBackup()
|
||||||
{
|
{
|
||||||
foreach ($this->dumpers as $dumper) {
|
foreach ($this->dumpers as $dumper) {
|
||||||
|
if (method_exists($dumper, 'setBackup')) {
|
||||||
$dumper->setBackup(false);
|
$dumper->setBackup(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Obtains the list of supported formats.
|
* Obtains the list of supported formats.
|
||||||
|
Reference in New Issue
Block a user