77
88namespace Magento \Framework \Phrase \Test \Unit \Renderer ;
99
10+ use Magento \Framework \Phrase \Renderer \MessageFormatter ;
1011use Magento \Framework \Phrase \Renderer \Translate as PhraseRenderer ;
1112use Magento \Framework \TestFramework \Unit \Helper \ObjectManager ;
1213use Magento \Framework \Translate ;
@@ -32,18 +33,32 @@ class TranslateTest extends TestCase
3233 */
3334 protected $ loggerMock ;
3435
36+ /**
37+ * @var MessageFormatter|MockObject
38+ */
39+ private $ messageFormatter ;
40+
3541 protected function setUp (): void
3642 {
3743 $ this ->_translator = $ this ->getMockForAbstractClass (TranslateInterface::class);
3844 $ this ->loggerMock = $ this ->getMockBuilder (LoggerInterface::class)
3945 ->getMock ();
46+ $ this ->messageFormatter = $ this ->getMockBuilder (MessageFormatter::class)
47+ ->disableOriginalConstructor ()
48+ ->getMock ();
49+ $ this ->messageFormatter
50+ ->method ('render ' )
51+ ->willReturnCallback (function ($ source ) {
52+ return end ($ source );
53+ });
4054
4155 $ objectManagerHelper = new ObjectManager ($ this );
4256 $ this ->_renderer = $ objectManagerHelper ->getObject (
4357 PhraseRenderer::class,
4458 [
4559 'translator ' => $ this ->_translator ,
46- 'logger ' => $ this ->loggerMock
60+ 'logger ' => $ this ->loggerMock ,
61+ 'messageFormatter ' => $ this ->messageFormatter ,
4762 ]
4863 );
4964 }
@@ -96,7 +111,8 @@ public function testRenderException()
96111 {
97112 $ message = 'something went wrong ' ;
98113 $ exception = new \Exception ($ message );
99-
114+ $ this ->messageFormatter ->expects ($ this ->never ())
115+ ->method ('render ' );
100116 $ this ->_translator ->expects ($ this ->once ())
101117 ->method ('getData ' )
102118 ->willThrowException ($ exception );
0 commit comments