You are here

MoFileLoaderTest.php in Zircon Profile 8

Same filename and directory in other branches
  1. 8.0 vendor/symfony/translation/Tests/Loader/MoFileLoaderTest.php

File

vendor/symfony/translation/Tests/Loader/MoFileLoaderTest.php
View source
<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
namespace Symfony\Component\Translation\Tests\Loader;

use Symfony\Component\Translation\Loader\MoFileLoader;
use Symfony\Component\Config\Resource\FileResource;
class MoFileLoaderTest extends \PHPUnit_Framework_TestCase {
  public function testLoad() {
    $loader = new MoFileLoader();
    $resource = __DIR__ . '/../fixtures/resources.mo';
    $catalogue = $loader
      ->load($resource, 'en', 'domain1');
    $this
      ->assertEquals(array(
      'foo' => 'bar',
    ), $catalogue
      ->all('domain1'));
    $this
      ->assertEquals('en', $catalogue
      ->getLocale());
    $this
      ->assertEquals(array(
      new FileResource($resource),
    ), $catalogue
      ->getResources());
  }
  public function testLoadPlurals() {
    $loader = new MoFileLoader();
    $resource = __DIR__ . '/../fixtures/plurals.mo';
    $catalogue = $loader
      ->load($resource, 'en', 'domain1');
    $this
      ->assertEquals(array(
      'foo' => 'bar',
      'foos' => '{0} bar|{1} bars',
    ), $catalogue
      ->all('domain1'));
    $this
      ->assertEquals('en', $catalogue
      ->getLocale());
    $this
      ->assertEquals(array(
      new FileResource($resource),
    ), $catalogue
      ->getResources());
  }

  /**
   * @expectedException \Symfony\Component\Translation\Exception\NotFoundResourceException
   */
  public function testLoadNonExistingResource() {
    $loader = new MoFileLoader();
    $resource = __DIR__ . '/../fixtures/non-existing.mo';
    $loader
      ->load($resource, 'en', 'domain1');
  }

  /**
   * @expectedException \Symfony\Component\Translation\Exception\InvalidResourceException
   */
  public function testLoadInvalidResource() {
    $loader = new MoFileLoader();
    $resource = __DIR__ . '/../fixtures/empty.mo';
    $loader
      ->load($resource, 'en', 'domain1');
  }
  public function testLoadEmptyTranslation() {
    $loader = new MoFileLoader();
    $resource = __DIR__ . '/../fixtures/empty-translation.mo';
    $catalogue = $loader
      ->load($resource, 'en', 'message');
    $this
      ->assertEquals(array(), $catalogue
      ->all('message'));
    $this
      ->assertEquals('en', $catalogue
      ->getLocale());
    $this
      ->assertEquals(array(
      new FileResource($resource),
    ), $catalogue
      ->getResources());
  }

}

Classes

Namesort descending Description
MoFileLoaderTest