コード例 #1
0
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $masterLanguage = $input->getArgument('master');
     $slaveLanguage = $input->getArgument('slave');
     $masterLanguageFile = $this->path . 'messages.' . $masterLanguage . '.yml';
     $slaveLanguageFile = $this->path . 'messages.' . $slaveLanguage . '.yml';
     $catMasterFile = $this->loader->load($masterLanguageFile, $masterLanguage);
     $catSlaveFile = $this->loader->load($slaveLanguageFile, $slaveLanguage);
     foreach ($catMasterFile->all('messages') as $key => $value) {
         if (!$catSlaveFile->has($key)) {
             $catSlaveFile->set($key, "TODO: {$value}");
         }
     }
     $messages = $catMasterFile->all('messages');
     ksort($messages);
     $catSlaveFile->replace($messages);
     foreach ($messages as $key => $value) {
         $catSlaveFile->set($key, $value);
     }
     $output->writeln('Slave file can modify');
     $dumper = new YamlFileDumper();
     $dumper->dump($catSlaveFile, array('path' => $this->path));
     /*unlink created trash file*/
     if (file_exists($slaveLanguageFile . '~')) {
         unlink($slaveLanguageFile . '~');
     }
     $output->writeln($slaveLanguageFile . ' --> <info>Slave file updated</info>');
 }
コード例 #2
0
ファイル: YamlFileDumperTest.php プロジェクト: saj696/pipe
 public function testLinearFormatCatalogue()
 {
     $catalogue = new MessageCatalogue('en');
     $catalogue->add(array('foo.bar1' => 'value1', 'foo.bar2' => 'value2'));
     $dumper = new YamlFileDumper();
     $this->assertStringEqualsFile(__DIR__ . '/../fixtures/messages_linear.yml', $dumper->formatCatalogue($catalogue, 'messages'));
 }
コード例 #3
0
ファイル: YamlFileDumperTest.php プロジェクト: scrobot/Lumen
 public function testDump()
 {
     $catalogue = new MessageCatalogue('en');
     $catalogue->add(array('foo' => 'bar'));
     $tempDir = sys_get_temp_dir();
     $dumper = new YamlFileDumper();
     $dumper->dump($catalogue, array('path' => $tempDir));
     $this->assertEquals(file_get_contents(__DIR__ . '/../fixtures/resources.yml'), file_get_contents($tempDir . '/messages.en.yml'));
     unlink($tempDir . '/messages.en.yml');
 }
コード例 #4
0
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $masterLanguage = $input->getArgument('master');
     $slaveLanguage = $input->getArgument('slave');
     $fileName = $input->getOption('file-name');
     $masterLanguageFile = $this->path . $fileName . '.' . $masterLanguage . '.yml';
     $slaveLanguageFile = $this->path . $fileName . '.' . $slaveLanguage . '.yml';
     if (!file_exists($slaveLanguageFile)) {
         $touch = touch($slaveLanguageFile);
         if ($touch) {
             $output->writeln($slaveLanguageFile . ' --> <info>Slave file created</info>');
         } else {
             $output->writeln($slaveLanguageFile . ' --> <fg=black;bg=red>Slave file can not created<fg=black;bg=red>');
         }
     }
     $catMasterFile = $this->loader->load($masterLanguageFile, $masterLanguage, $fileName);
     $catSlaveFile = $this->loader->load($slaveLanguageFile, $slaveLanguage, $fileName);
     foreach ($catMasterFile->all($fileName) as $key => $value) {
         if (!$catSlaveFile->has($key, $fileName)) {
             $catSlaveFile->set($key, "TODO: " . $value, $fileName);
         }
     }
     $messages = $catSlaveFile->all($fileName);
     ksort($messages);
     $catSlaveFile->replace($messages, $fileName);
     foreach ($messages as $key => $value) {
         $catSlaveFile->set($key, $value, $fileName);
     }
     $output->writeln('Slave file can modify');
     $dumper = new YamlFileDumper();
     $dumper->dump($catSlaveFile, array('path' => $this->path));
     /*unlink created trash file*/
     if (file_exists($slaveLanguageFile . '~')) {
         unlink($slaveLanguageFile . '~');
     }
     $output->writeln($slaveLanguageFile . ' --> <info>Slave file updated</info>');
 }