CacheManagerTest.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Translation\Test\Unit\Model\Inline;
  7. /**
  8. * @covers \Magento\Translation\Model\Inline\CacheManager
  9. */
  10. class CacheManagerTest extends \PHPUnit\Framework\TestCase
  11. {
  12. /**
  13. * @var \Magento\Translation\Model\Inline\CacheManager
  14. */
  15. protected $model;
  16. /**
  17. * @var \Magento\Framework\Event\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject
  18. */
  19. protected $eventManagerMock;
  20. /**
  21. * @var \Magento\Framework\Translate\ResourceInterface|\PHPUnit_Framework_MockObject_MockObject
  22. */
  23. protected $translateResourceMock;
  24. /**
  25. * @var \Magento\Framework\Locale\ResolverInterface|\PHPUnit_Framework_MockObject_MockObject
  26. */
  27. protected $localeResolverMock;
  28. /**
  29. * @var \Magento\Translation\Model\FileManager|\PHPUnit_Framework_MockObject_MockObject
  30. */
  31. protected $fileManagerMock;
  32. protected function setUp()
  33. {
  34. $this->eventManagerMock = $this->getMockBuilder(\Magento\Framework\Event\ManagerInterface::class)
  35. ->disableOriginalConstructor()
  36. ->setMethods([])
  37. ->getMock();
  38. $this->translateResourceMock = $this->getMockBuilder(\Magento\Framework\Translate\ResourceInterface::class)
  39. ->disableOriginalConstructor()
  40. ->setMethods([])
  41. ->getMock();
  42. $this->localeResolverMock = $this->getMockBuilder(\Magento\Framework\Locale\ResolverInterface::class)
  43. ->disableOriginalConstructor()
  44. ->setMethods([])
  45. ->getMock();
  46. $this->fileManagerMock = $this->getMockBuilder(\Magento\Translation\Model\FileManager::class)
  47. ->disableOriginalConstructor()
  48. ->setMethods([])
  49. ->getMock();
  50. $objectManagerHelper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
  51. $this->model = $objectManagerHelper->getObject(
  52. \Magento\Translation\Model\Inline\CacheManager::class,
  53. [
  54. 'eventManager' => $this->eventManagerMock,
  55. 'translateResource' => $this->translateResourceMock,
  56. 'localeResolver' => $this->localeResolverMock,
  57. 'fileManager' => $this->fileManagerMock
  58. ]
  59. );
  60. }
  61. public function testUpdateAndGetTranslations()
  62. {
  63. $translations = ['phrase1' => 'translated1', 'phrase2' => 'translated2'];
  64. $this->eventManagerMock->expects($this->once())->method('dispatch');
  65. $this->translateResourceMock->expects($this->once())->method('getTranslationArray')->willReturn($translations);
  66. $this->localeResolverMock->expects($this->once())->method('getLocale')->willReturn('en_US');
  67. $this->fileManagerMock->expects($this->once())->method('updateTranslationFileContent');
  68. $this->assertEquals($translations, $this->model->updateAndGetTranslations());
  69. }
  70. }