MessagesFileLoaderTest.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  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. /**
  26. * Set Up
  27. *
  28. * @return void
  29. */
  30. public function setUp()
  31. {
  32. parent::setUp();
  33. $this->localePaths = Configure::read('App.paths.locales');
  34. }
  35. /**
  36. * Tear down method
  37. *
  38. * @return void
  39. */
  40. public function tearDown()
  41. {
  42. parent::tearDown();
  43. Configure::write('App.paths.locales', $this->localePaths);
  44. }
  45. /**
  46. * test reading file from custom locale folder
  47. *
  48. * @return void
  49. */
  50. public function testCustomLocalePath()
  51. {
  52. $loader = new MessagesFileLoader('default', 'en');
  53. $package = $loader();
  54. $messages = $package->getMessages();
  55. $this->assertEquals('Po (translated)', $messages['Plural Rule 1']);
  56. Configure::write('App.paths.locales', [TEST_APP . 'custom_locale' . DS]);
  57. $loader = new MessagesFileLoader('default', 'en');
  58. $package = $loader();
  59. $messages = $package->getMessages();
  60. $this->assertEquals('Po (translated) from custom folder', $messages['Plural Rule 1']);
  61. }
  62. }