1111
1212namespace Symfony \Component \Translation \Tests \DataCollector ;
1313
14+ use PHPUnit \Framework \MockObject \MockObject ;
1415use PHPUnit \Framework \TestCase ;
1516use Symfony \Component \HttpFoundation \Request ;
1617use Symfony \Component \HttpFoundation \Response ;
1718use Symfony \Component \Translation \DataCollector \TranslationDataCollector ;
1819use Symfony \Component \Translation \DataCollectorTranslator ;
20+ use Symfony \Component \Translation \Translator ;
1921
2022class TranslationDataCollectorTest extends TestCase
2123{
2224 public function testCollectEmptyMessages ()
2325 {
24- $ translator = $ this ->getTranslator ();
25- $ translator ->expects ($ this ->any ())->method ('getCollectedMessages ' )->willReturn ([]);
26+ /** @var Translator&MockObject $translator */
27+ $ translator = $ this ->createMock (Translator::class);
28+ $ dataCollectorTranslator = new DataCollectorTranslator ($ translator );
2629
27- $ dataCollector = new TranslationDataCollector ($ translator );
30+ $ dataCollector = new TranslationDataCollector ($ dataCollectorTranslator );
2831 $ dataCollector ->lateCollect ();
2932
3033 $ this ->assertEquals (0 , $ dataCollector ->getCountMissings ());
@@ -119,10 +122,15 @@ public function testCollect()
119122 ],
120123 ];
121124
122- $ translator = $ this ->getTranslator ();
123- $ translator ->expects ($ this ->any ())->method ('getCollectedMessages ' )->willReturn ($ collectedMessages );
125+ /** @var Translator&MockObject $translator */
126+ $ translator = $ this ->createMock (Translator::class);
127+ $ dataCollectorTranslator = new DataCollectorTranslator ($ translator );
124128
125- $ dataCollector = new TranslationDataCollector ($ translator );
129+ $ reflection = new \ReflectionClass ($ dataCollectorTranslator );
130+ $ property = $ reflection ->getProperty ('messages ' );
131+ $ property ->setValue ($ dataCollectorTranslator , $ collectedMessages );
132+
133+ $ dataCollector = new TranslationDataCollector ($ dataCollectorTranslator );
126134 $ dataCollector ->lateCollect ();
127135
128136 $ this ->assertEquals (1 , $ dataCollector ->getCountMissings ());
@@ -134,12 +142,15 @@ public function testCollect()
134142
135143 public function testCollectAndReset ()
136144 {
137- $ translator = $ this ->getTranslator ();
145+ /** @var Translator&MockObject $translator */
146+ $ translator = $ this ->createMock (Translator::class);
138147 $ translator ->method ('getLocale ' )->willReturn ('fr ' );
139148 $ translator ->method ('getFallbackLocales ' )->willReturn (['en ' ]);
140149 $ translator ->method ('getGlobalParameters ' )->willReturn (['welcome ' => 'Welcome {name}! ' ]);
141150
142- $ dataCollector = new TranslationDataCollector ($ translator );
151+ $ dataCollectorTranslator = new DataCollectorTranslator ($ translator );
152+
153+ $ dataCollector = new TranslationDataCollector ($ dataCollectorTranslator );
143154 $ dataCollector ->collect ($ this ->createMock (Request::class), $ this ->createMock (Response::class));
144155
145156 $ this ->assertSame ('fr ' , $ dataCollector ->getLocale ());
@@ -152,15 +163,4 @@ public function testCollectAndReset()
152163 $ this ->assertSame ([], $ dataCollector ->getFallbackLocales ());
153164 $ this ->assertSame ([], $ dataCollector ->getGlobalParameters ());
154165 }
155-
156- private function getTranslator ()
157- {
158- $ translator = $ this
159- ->getMockBuilder (DataCollectorTranslator::class)
160- ->disableOriginalConstructor ()
161- ->getMock ()
162- ;
163-
164- return $ translator ;
165- }
166166}
0 commit comments