Skip to content

Commit 9969fb1

Browse files
committed
do not mock the ContainerInterface
1 parent adbc498 commit 9969fb1

File tree

2 files changed

+11
-26
lines changed

2 files changed

+11
-26
lines changed

Tests/Config/ContainerParametersResourceCheckerTest.php

Lines changed: 9 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,21 @@
1111

1212
namespace Symfony\Component\DependencyInjection\Tests\Config;
1313

14-
use PHPUnit\Framework\MockObject\MockObject;
1514
use PHPUnit\Framework\TestCase;
1615
use Symfony\Component\DependencyInjection\Config\ContainerParametersResource;
1716
use Symfony\Component\DependencyInjection\Config\ContainerParametersResourceChecker;
18-
use Symfony\Component\DependencyInjection\ContainerInterface;
17+
use Symfony\Component\DependencyInjection\Container;
1918

2019
class ContainerParametersResourceCheckerTest extends TestCase
2120
{
2221
private ContainerParametersResource $resource;
2322
private ContainerParametersResourceChecker $resourceChecker;
24-
private MockObject&ContainerInterface $container;
23+
private Container $container;
2524

2625
protected function setUp(): void
2726
{
2827
$this->resource = new ContainerParametersResource(['locales' => ['fr', 'en'], 'default_locale' => 'fr']);
29-
$this->container = $this->createMock(ContainerInterface::class);
28+
$this->container = new Container();
3029
$this->resourceChecker = new ContainerParametersResourceChecker($this->container);
3130
}
3231

@@ -47,29 +46,16 @@ public function testIsFresh(callable $mockContainer, $expected)
4746

4847
public static function isFreshProvider()
4948
{
50-
yield 'not fresh on missing parameter' => [function (MockObject $container) {
51-
$container->method('hasParameter')->with('locales')->willReturn(false);
49+
yield 'not fresh on missing parameter' => [function (Container $container) {
5250
}, false];
5351

54-
yield 'not fresh on different value' => [function (MockObject $container) {
55-
$container->method('getParameter')->with('locales')->willReturn(['nl', 'es']);
52+
yield 'not fresh on different value' => [function (Container $container) {
53+
$container->setParameter('locales', ['nl', 'es']);
5654
}, false];
5755

58-
yield 'fresh on every identical parameters' => [function (MockObject $container) {
59-
$container->expects(self::exactly(2))->method('hasParameter')->willReturn(true);
60-
$container->expects(self::exactly(2))->method('getParameter')
61-
->willReturnCallback(function (...$args) {
62-
static $series = [
63-
[['locales'], ['fr', 'en']],
64-
[['default_locale'], 'fr'],
65-
];
66-
67-
[$expectedArgs, $return] = array_shift($series);
68-
self::assertSame($expectedArgs, $args);
69-
70-
return $return;
71-
})
72-
;
56+
yield 'fresh on every identical parameters' => [function (Container $container) {
57+
$container->setParameter('locales', ['fr', 'en']);
58+
$container->setParameter('default_locale', 'fr');
7359
}, true];
7460
}
7561
}

Tests/LazyProxy/Instantiator/RealServiceInstantiatorTest.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
namespace Symfony\Component\DependencyInjection\Tests\LazyProxy\Instantiator;
1313

1414
use PHPUnit\Framework\TestCase;
15-
use Symfony\Component\DependencyInjection\ContainerInterface;
15+
use Symfony\Component\DependencyInjection\Container;
1616
use Symfony\Component\DependencyInjection\Definition;
1717
use Symfony\Component\DependencyInjection\LazyProxy\Instantiator\RealServiceInstantiator;
1818

@@ -27,9 +27,8 @@ public function testInstantiateProxy()
2727
{
2828
$instantiator = new RealServiceInstantiator();
2929
$instance = new \stdClass();
30-
$container = $this->createMock(ContainerInterface::class);
3130
$callback = fn () => $instance;
3231

33-
$this->assertSame($instance, $instantiator->instantiateProxy($container, new Definition(), 'foo', $callback));
32+
$this->assertSame($instance, $instantiator->instantiateProxy(new Container(), new Definition(), 'foo', $callback));
3433
}
3534
}

0 commit comments

Comments
 (0)