예제 #1
0
 /**
  * @dataProvider provideErrorMoFiles
  */
 public function testEmptyMoFile($file)
 {
     $parser = new MoTranslator\Translator($file);
     if (basename($file) === 'magic.mo') {
         $this->assertEquals(MoTranslator\Translator::ERROR_BAD_MAGIC, $parser->error);
     } else {
         $this->assertEquals(MoTranslator\Translator::ERROR_READING, $parser->error);
     }
     $this->assertEquals('Table', $parser->pgettext('Display format', 'Table'));
     $this->assertEquals('"%d" seconds', $parser->ngettext('"%d" second', '"%d" seconds', 10));
 }
예제 #2
0
<?php

require './vendor/autoload.php';
$files = array('./tests/data/big.mo', './tests/data/little.mo');
$start = microtime(true);
foreach ($files as $filename) {
    $parser = new MoTranslator\Translator($filename);
    for ($i = 0; $i < 20000; $i++) {
        $parser->ngettext('%d second', '%d seconds', 10);
        $parser->ngettext('%d second', '%d seconds', 1);
    }
}
$end = microtime(true);
$diff = $end - $start;
echo "Execution took {$diff} seconds\n";