public function testExtract()
 {
     $input = new ArgvInput(array('app/console', 'translation:extract', 'en', '--dir=' . ($inputDir = __DIR__ . '/../Translation/Extractor/Fixture/SimpleTest'), '--output-dir=' . ($outputDir = sys_get_temp_dir() . '/' . uniqid('extract'))));
     $expectedOutput = 'Keep old translations: No' . "\n" . 'Output-Path: ' . $outputDir . "\n" . 'Directories: ' . $inputDir . "\n" . 'Excluded Directories: Tests' . "\n" . 'Excluded Names: *Test.php, *TestCase.php' . "\n" . 'Output-Format: # whatever is present, if nothing then xliff #' . "\n" . 'Custom Extractors: # none #' . "\n" . '============================================================' . "\n" . 'Loading catalogues from "' . $outputDir . '"' . "\n" . 'Extracting translation keys' . "\n" . 'Extracting messages from directory : ' . $inputDir . "\n" . 'Writing translation file "' . $outputDir . '/messages.en.xliff".' . "\n" . 'done!' . "\n";
     $this->getApp()->run($input, $output = new Output());
     $this->assertEquals($expectedOutput, $output->getContent());
     $files = FileUtils::findTranslationFiles($outputDir);
     $this->assertTrue(isset($files['messages']['en']));
 }
 public function testExtractDryRun()
 {
     $input = new ArgvInput(array('app/console', 'translation:extract', 'en', '--dir=' . ($inputDir = __DIR__ . '/../Translation/Extractor/Fixture/SimpleTest'), '--output-dir=' . ($outputDir = sys_get_temp_dir() . '/' . uniqid('extract')), '--dry-run', '--verbose'));
     $expectedOutput = array('php.foo->', 'php.bar-> Bar', 'php.baz->', 'php.foo_bar-> Foo', 'twig.foo->', 'twig.bar-> Bar', 'twig.baz->', 'twig.foo_bar-> Foo', 'form.foo->', 'form.bar->', 'controller.foo-> Foo');
     $this->getApp()->run($input, $output = new Output());
     foreach ($expectedOutput as $transID) {
         $this->assertContains($transID, $output->getContent());
     }
 }