Skip to content
This repository was archived by the owner on Apr 29, 2025. It is now read-only.

Commit d7c8344

Browse files
authored
Merge pull request #139 from sroze/uses-test-container-if-exists
Uses the test container if exists
2 parents 022ece0 + d9d389c commit d7c8344

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

spec/Behat/Symfony2Extension/Context/Argument/ServiceArgumentResolverSpec.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ class ServiceArgumentResolverSpec extends ObjectBehavior
1414
function let(KernelInterface $kernel, ContainerInterface $container)
1515
{
1616
$kernel->getContainer()->willReturn($container);
17+
$container->has('test.service_container')->willReturn(false);
1718

1819
$this->beConstructedWith($kernel);
1920
}
@@ -150,4 +151,20 @@ function it_resolves_arrays_of_strings_starting_with_at_sign(
150151
array('array' => array($service1, $service2))
151152
);
152153
}
154+
155+
function it_uses_the_test_service_container(
156+
ReflectionClass $reflectionClass,
157+
ContainerInterface $container,
158+
ContainerInterface $testContainer
159+
) {
160+
$testContainer->getParameter('parameter')->willReturn('param_value');
161+
$testContainer->hasParameter('parameter')->willReturn(true);
162+
163+
$container->has('test.service_container')->willReturn(true);
164+
$container->get('test.service_container')->willReturn($testContainer);
165+
166+
$this->resolveArguments($reflectionClass, array('parameter' => '%parameter%'))->shouldReturn(
167+
array('parameter' => 'param_value')
168+
);
169+
}
153170
}

src/Behat/Symfony2Extension/Context/Argument/ServiceArgumentResolver.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ private function resolveArgument($argument)
7070
}
7171

7272
$container = $this->kernel->getContainer();
73+
$container = $container->has('test.service_container') ? $container->get('test.service_container') : $container;
7374

7475
if ($service = $this->getService($container, $argument)) {
7576
return $service;

0 commit comments

Comments
 (0)