Skip to content

Commit aa6fb3b

Browse files
committed
[Messenger] use ServicesResetterInterface instead of concrete ServicesResetter in ResetServicesListener listener
1 parent 6e4ffa6 commit aa6fb3b

File tree

4 files changed

+32
-24
lines changed

4 files changed

+32
-24
lines changed

src/Symfony/Component/Messenger/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
CHANGELOG
22
=========
33

4+
8.0
5+
---
6+
7+
* Use `ServicesResetterInterface` instead of concrete `ServicesResetter` in `ResetServicesListener`
8+
49
7.3
510
---
611

src/Symfony/Component/Messenger/EventListener/ResetServicesListener.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
namespace Symfony\Component\Messenger\EventListener;
1313

1414
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
15-
use Symfony\Component\HttpKernel\DependencyInjection\ServicesResetter;
15+
use Symfony\Component\HttpKernel\DependencyInjection\ServicesResetterInterface;
1616
use Symfony\Component\Messenger\Event\WorkerRunningEvent;
1717
use Symfony\Component\Messenger\Event\WorkerStoppedEvent;
1818

@@ -22,7 +22,7 @@
2222
class ResetServicesListener implements EventSubscriberInterface
2323
{
2424
public function __construct(
25-
private ServicesResetter $servicesResetter,
25+
private ServicesResetterInterface $servicesResetter,
2626
) {
2727
}
2828

src/Symfony/Component/Messenger/Tests/EventListener/ResetServicesListenerTest.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@
1111

1212
namespace Symfony\Component\Messenger\Tests\EventListener;
1313

14+
use PHPUnit\Framework\MockObject\MockObject;
1415
use PHPUnit\Framework\TestCase;
15-
use Symfony\Component\HttpKernel\DependencyInjection\ServicesResetter;
16+
use Symfony\Component\HttpKernel\DependencyInjection\ServicesResetterInterface;
1617
use Symfony\Component\Messenger\Event\WorkerRunningEvent;
1718
use Symfony\Component\Messenger\Event\WorkerStoppedEvent;
1819
use Symfony\Component\Messenger\EventListener\ResetServicesListener;
@@ -31,7 +32,8 @@ public static function provideResetServices(): iterable
3132
*/
3233
public function testResetServices(bool $shouldReset)
3334
{
34-
$servicesResetter = $this->createMock(ServicesResetter::class);
35+
/** @var ServicesResetterInterface&MockObject $servicesResetter */
36+
$servicesResetter = $this->createMock(ServicesResetterInterface::class);
3537
$servicesResetter->expects($shouldReset ? $this->once() : $this->never())->method('reset');
3638

3739
$event = new WorkerRunningEvent($this->createMock(Worker::class), !$shouldReset);
@@ -42,7 +44,8 @@ public function testResetServices(bool $shouldReset)
4244

4345
public function testResetServicesAtStop()
4446
{
45-
$servicesResetter = $this->createMock(ServicesResetter::class);
47+
/** @var ServicesResetterInterface&MockObject $servicesResetter */
48+
$servicesResetter = $this->createMock(ServicesResetterInterface::class);
4649
$servicesResetter->expects($this->once())->method('reset');
4750

4851
$event = new WorkerStoppedEvent($this->createMock(Worker::class));

src/Symfony/Component/Translation/Tests/DataCollector/TranslationDataCollectorTest.php

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,23 @@
1111

1212
namespace Symfony\Component\Translation\Tests\DataCollector;
1313

14+
use PHPUnit\Framework\MockObject\MockObject;
1415
use PHPUnit\Framework\TestCase;
1516
use Symfony\Component\HttpFoundation\Request;
1617
use Symfony\Component\HttpFoundation\Response;
1718
use Symfony\Component\Translation\DataCollector\TranslationDataCollector;
1819
use Symfony\Component\Translation\DataCollectorTranslator;
20+
use Symfony\Component\Translation\Translator;
1921

2022
class 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

Comments
 (0)