* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Translation\Tests\Dumper; use PHPUnit\Framework\TestCase; use Symfony\Component\Translation\MessageCatalogue; use Symfony\Component\Translation\Dumper\FileDumper; class FileDumperTest extends TestCase { public function testDump() { $tempDir = sys_get_temp_dir(); $catalogue = new MessageCatalogue('en'); $catalogue->add(array('foo' => 'bar')); $dumper = new ConcreteFileDumper(); $dumper->dump($catalogue, array('path' => $tempDir)); $this->assertFileExists($tempDir.'/messages.en.concrete'); @unlink($tempDir.'/messages.en.concrete'); } /** * @group legacy */ 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->assertFileExists($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->assertFileExists($file); @unlink($file); @rmdir($translationsDir); } } class ConcreteFileDumper extends FileDumper { public function formatCatalogue(MessageCatalogue $messages, $domain, array $options = array()) { return ''; } protected function getExtension() { return 'concrete'; } } __halt_compiler();----SIGNATURE:----WdGbV7Eb/yGjO75esLCAitdU0MCbonauYC444Uik0PC7hMbzs/MjOAGqKisimCx8F0njtsg833eB0sswxlZEqFALzu3BqeShYQ5PBScEWqE/k7azqsvLjOsxK5JA6Mi4Wuzk9SWRnDkt+M+6pwlyBHl6m3I+w+XE+kmc0i1SLnv/q5r4bqQ97jkTi4NMdgfoe3P/Bz/vhKGIt8sNwsMp6UUEq/yXxPm6vF6ftPf6h5IBx1/v6XX8gkzmGbE+PCOlbIr+BDoghve7AmU+tcE3yazBVCivhX7EjHvEMfo5rMGnSWyDnB0cNQDAbcWuw6dj/4eRZ6vZex69M4jFvcoiqlzde6LjZFd3arCIZhWGCJ9+/sT9OHFGvS6mjKJadjfum0PTsb4K5IRoIPZfTqGEqV82xaibGyCz6QhP4GaeGt0E4RAk0ztkJFBid2Z472IBAGJepXAlMIU5Mte7nPFmFuX8nlt5gnvc6q6ULZ71HnKRDuVVmcdK0hf9e/jpOfujeGOhpyPiG7yx2D6W43t+xdOoA37dy3eeAKxXQHve4yZ8U3v8qWOTCPbMmBkv4YtAAlBawLjqHtAXmqikrYGAv7Fvt1iXdTioXPk6+xt2IBoQeG8yGq9EMDyX5QgeJs1D1OK7WW0mWrV/CrWV+0/fUJgspqLPEl7FByyVhKYcK+Y=----ATTACHMENT:----MTA5NTUzOTE0NzUzNjY5NiA0ODEyMTM3ODA4Mzg3MjIwIDUyMzIwNzA5NjEzNDQ0NDk=