FileDumperTest.php in Plug 7
File
lib/Symfony/translation/Tests/Dumper/FileDumperTest.php
View source
<?php
namespace Symfony\Component\Translation\Tests\Dumper;
use Symfony\Component\Translation\MessageCatalogue;
use Symfony\Component\Translation\Dumper\FileDumper;
class FileDumperTest extends \PHPUnit_Framework_TestCase {
public function testDumpBackupsFileIfExisting() {
$tempDir = sys_get_temp_dir();
$file = $tempDir . '/messages.en.concrete';
$backupFile = $file . '~';
@touch($file);
$catalogue = new MessageCatalogue('en');
$catalogue
->add(array(
'foo' => 'bar',
));
$dumper = new ConcreteFileDumper();
$dumper
->dump($catalogue, array(
'path' => $tempDir,
));
$this
->assertTrue(file_exists($backupFile));
@unlink($file);
@unlink($backupFile);
}
public function testDumpCreatesNestedDirectoriesAndFile() {
$tempDir = sys_get_temp_dir();
$translationsDir = $tempDir . '/test/translations';
$file = $translationsDir . '/messages.en.concrete';
$catalogue = new MessageCatalogue('en');
$catalogue
->add(array(
'foo' => 'bar',
));
$dumper = new ConcreteFileDumper();
$dumper
->setRelativePathTemplate('test/translations/%domain%.%locale%.%extension%');
$dumper
->dump($catalogue, array(
'path' => $tempDir,
));
$this
->assertTrue(file_exists($file));
@unlink($file);
@rmdir($translationsDir);
}
}
class ConcreteFileDumper extends FileDumper {
protected function format(MessageCatalogue $messages, $domain) {
return '';
}
protected function getExtension() {
return 'concrete';
}
}