* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Intl\Tests\Data\Bundle\Reader; use PHPUnit\Framework\TestCase; use Symfony\Component\Intl\Data\Bundle\Reader\IntlBundleReader; /** * @author Bernhard Schussek * @requires extension intl */ class IntlBundleReaderTest extends TestCase { /** * @var IntlBundleReader */ private $reader; protected function setUp() { $this->reader = new IntlBundleReader(); } public function testReadReturnsArrayAccess() { $data = $this->reader->read(__DIR__.'/Fixtures/res', 'ro'); $this->assertInstanceOf('\ArrayAccess', $data); $this->assertSame('Bar', $data['Foo']); $this->assertArrayNotHasKey('ExistsNot', $data); } public function testReadFollowsAlias() { // "alias" = "ro" $data = $this->reader->read(__DIR__.'/Fixtures/res', 'alias'); $this->assertInstanceOf('\ArrayAccess', $data); $this->assertSame('Bar', $data['Foo']); $this->assertArrayNotHasKey('ExistsNot', $data); } public function testReadDoesNotFollowFallback() { if (defined('HHVM_VERSION')) { $this->markTestSkipped('ResourceBundle does not support disabling fallback properly on HHVM.'); } // "ro_MD" -> "ro" $data = $this->reader->read(__DIR__.'/Fixtures/res', 'ro_MD'); $this->assertInstanceOf('\ArrayAccess', $data); $this->assertSame('Bam', $data['Baz']); $this->assertArrayNotHasKey('Foo', $data); $this->assertNull($data['Foo']); $this->assertArrayNotHasKey('ExistsNot', $data); } public function testReadDoesNotFollowFallbackAlias() { if (defined('HHVM_VERSION')) { $this->markTestSkipped('ResourceBundle does not support disabling fallback properly on HHVM.'); } // "mo" = "ro_MD" -> "ro" $data = $this->reader->read(__DIR__.'/Fixtures/res', 'mo'); $this->assertInstanceOf('\ArrayAccess', $data); $this->assertSame('Bam', $data['Baz'], 'data from the aliased locale can be accessed'); $this->assertArrayNotHasKey('Foo', $data); $this->assertNull($data['Foo']); $this->assertArrayNotHasKey('ExistsNot', $data); } /** * @expectedException \Symfony\Component\Intl\Exception\ResourceBundleNotFoundException */ public function testReadFailsIfNonExistingLocale() { $this->reader->read(__DIR__.'/Fixtures/res', 'foo'); } /** * @expectedException \Symfony\Component\Intl\Exception\ResourceBundleNotFoundException */ public function testReadFailsIfNonExistingFallbackLocale() { $this->reader->read(__DIR__.'/Fixtures/res', 'ro_AT'); } /** * @expectedException \Symfony\Component\Intl\Exception\RuntimeException */ public function testReadFailsIfNonExistingDirectory() { $this->reader->read(__DIR__.'/foo', 'ro'); } } __halt_compiler();----SIGNATURE:----ZHSuQgL3F90Y1y8cMCQM+Yvxr+tGgdQEUEiJTH43DFX/XpmC7KCUGZNY5M8Eir0Pg03NoO0cKLfA6ZI01pxa/ki6FnxTHWN3ZLmKxQ1ZxgC+ET8nhT0yP5NJ8RgdvKA9BELjFXPNGdP5JLNkYsPOZNCcRqA3btDSZoSZ4NrdthqVMr/+u96F9LFD/aOpRF3Iq7ZzWmXivZnFurVOYZdztzGQD3vMkoELTnG3qI5IT7OTsRM79vo54zjtt5WYvGDB/E+8DmB3ZOl3CkDmgirvekNc1NUXH74CejHPRlndHA+gfv7sWTtW3y+rkAdVGqUNnkpHCGyO0gcvGZqT8XRN8Y8XYsMi3m+lBSlMLdYjtQc2QJn4B71JWfOzfx5lrVuB2kZTwXeT/nA3n8EDIu9uet6RNwl0sqU24ySBQ9y24z4Q9o2KVcUjSkJSsITcLY3883bZyOsuZ2W4HoALIbw4S4avIawkLA7c3n2GQe8iyzjBVASp6N80Y0CCnkFeh4BQ68LUp7ujM7dVAdiDXmjdIQUQjU7nROQJB5Ca79b+j0PdZKM8Y0m3zE659OG91v2qdOxb39t+mvvMnK4EqP4NoM+AQ71LpqMubnGv1odiD81rf/jysJgC2UlCICHukQFkxX8e2Hm5kiRkxNZAxqSLNln2rz3DbRyZefsw9xVnb0g=----ATTACHMENT:----NzY4MjAxNjY5NTcyNzI2MyA0Mzc4NjM0MjcwMjE4NDQ3IDQwMTY1MTI4MTQ5ODMxODc=