MessagesFileLoaderTest.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. /**
  3. * CakePHP(tm) Tests <http://book.cakephp.org/2.0/en/development/testing.html>
  4. * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
  5. *
  6. * Licensed under The MIT License
  7. * For full copyright and license information, please see the LICENSE.txt
  8. * Redistributions of files must retain the above copyright notice
  9. *
  10. * @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
  11. * @link http://book.cakephp.org/2.0/en/development/testing.html CakePHP(tm) Tests
  12. * @since 3.0.0
  13. * @license http://www.opensource.org/licenses/mit-license.php MIT License
  14. */
  15. namespace Cake\Test\TestCase\I18n;
  16. use Cake\Core\Configure;
  17. use Cake\I18n\MessagesFileLoader;
  18. use Cake\TestSuite\TestCase;
  19. /**
  20. * MessagesFileLoaderTest class
  21. *
  22. */
  23. class MessagesFileLoaderTest extends TestCase {
  24. /**
  25. * Set Up
  26. *
  27. * @return void
  28. */
  29. public function setUp() {
  30. parent::setUp();
  31. $this->localePaths = Configure::read('App.paths.locales');
  32. }
  33. /**
  34. * Tear down method
  35. *
  36. * @return void
  37. */
  38. public function tearDown() {
  39. parent::tearDown();
  40. Configure::write('App.paths.locales', $this->localePaths);
  41. }
  42. /**
  43. * test reading file from custom locale folder
  44. *
  45. * @return void
  46. */
  47. public function testCustomLocalePath() {
  48. $loader = new MessagesFileLoader('default', 'en');
  49. $package = $loader();
  50. $messages = $package->getMessages();
  51. $this->assertEquals('Po (translated)', $messages['Plural Rule 1']);
  52. Configure::write('App.paths.locales', [TEST_APP . 'custom_locale' . DS]);
  53. $loader = new MessagesFileLoader('default', 'en');
  54. $package = $loader();
  55. $messages = $package->getMessages();
  56. $this->assertEquals('Po (translated) from custom folder', $messages['Plural Rule 1']);
  57. }
  58. }