Minor fixes

This commit is contained in:
Kamil Kokot
2018-12-31 15:47:48 +01:00
parent f334860d5c
commit 5151d30b24
2 changed files with 24 additions and 16 deletions

View File

@@ -5,7 +5,6 @@ declare(strict_types=1);
namespace FriendsOfBehat\SymfonyExtension\Bundle\DependencyInjection; namespace FriendsOfBehat\SymfonyExtension\Bundle\DependencyInjection;
use Behat\Behat\Context\Context; use Behat\Behat\Context\Context;
use Behat\Mink\Mink;
use Behat\Mink\Session; use Behat\Mink\Session;
use FriendsOfBehat\SymfonyExtension\Mink\MinkParameters; use FriendsOfBehat\SymfonyExtension\Mink\MinkParameters;
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
@@ -46,7 +45,7 @@ final class FriendsOfBehatSymfonyExtensionExtension extends Extension implements
private function provideMinkIntegration(ContainerBuilder $container): void private function provideMinkIntegration(ContainerBuilder $container): void
{ {
$minkDefaultSessionDefinition = new Definition(Session::class, ['fob_symfony_extension.mink_default_session']); $minkDefaultSessionDefinition = new Definition(Session::class, ['fob_symfony.mink.default_session']);
$minkDefaultSessionDefinition->setPublic(true); $minkDefaultSessionDefinition->setPublic(true);
$minkDefaultSessionDefinition->setLazy(true); $minkDefaultSessionDefinition->setLazy(true);
$minkDefaultSessionDefinition->setFactory([new Reference('behat.service_container'), 'get']); $minkDefaultSessionDefinition->setFactory([new Reference('behat.service_container'), 'get']);
@@ -54,7 +53,7 @@ final class FriendsOfBehatSymfonyExtensionExtension extends Extension implements
$container->setDefinition('behat.mink.default_session', $minkDefaultSessionDefinition); $container->setDefinition('behat.mink.default_session', $minkDefaultSessionDefinition);
$container->setAlias(Session::class, 'behat.mink.default_session'); $container->setAlias(Session::class, 'behat.mink.default_session');
$minkParametersDefinition = new Definition(MinkParameters::class, ['fob_symfony_extension.mink_parameters']); $minkParametersDefinition = new Definition(MinkParameters::class, ['fob_symfony.mink.parameters']);
$minkParametersDefinition->setPublic(true); $minkParametersDefinition->setPublic(true);
$minkParametersDefinition->setLazy(true); $minkParametersDefinition->setLazy(true);
$minkParametersDefinition->setFactory([new Reference('behat.service_container'), 'get']); $minkParametersDefinition->setFactory([new Reference('behat.service_container'), 'get']);

View File

@@ -29,13 +29,13 @@ final class SymfonyExtension implements Extension
* Kernel used inside Behat contexts or to create services injected to them. * Kernel used inside Behat contexts or to create services injected to them.
* Container is built before every scenario. * Container is built before every scenario.
*/ */
public const KERNEL_ID = 'sylius_symfony_extension.kernel'; public const KERNEL_ID = 'fob_symfony.kernel';
/** /**
* Kernel used by Symfony driver to isolate web container from contexts' container. * Kernel used by Symfony driver to isolate web container from contexts' container.
* Container is built before every request. * Container is built before every request.
*/ */
private const DRIVER_KERNEL_ID = 'sylius_symfony_extension.driver_kernel'; private const DRIVER_KERNEL_ID = 'fob_symfony.driver_kernel';
/** /**
* Default Symfony configuration * Default Symfony configuration
@@ -83,20 +83,12 @@ final class SymfonyExtension implements Extension
$this->loadKernel($container, $config['kernel']); $this->loadKernel($container, $config['kernel']);
$this->loadDriverKernel($container); $this->loadDriverKernel($container);
$this->loadEnvironmentHandler($container);
$this->loadKernelRebooter($container); $this->loadKernelRebooter($container);
$minkDefaultSessionDefinition = new Definition(Session::class); $this->loadEnvironmentHandler($container);
$minkDefaultSessionDefinition->setPublic(true);
$minkDefaultSessionDefinition->setFactory([new Reference('mink'), 'getSession']);
$container->setDefinition('fob_symfony_extension.mink_default_session', $minkDefaultSessionDefinition); $this->loadMinkDefaultSession($container);
$this->loadMinkParameters($container);
$minkParametersDefinition = new Definition(MinkParameters::class, [new Parameter('mink.parameters')]);
$minkParametersDefinition->setPublic(true);
$container->setDefinition('fob_symfony_extension.mink_parameters', $minkParametersDefinition);
} }
public function process(ContainerBuilder $container): void public function process(ContainerBuilder $container): void
@@ -170,6 +162,23 @@ final class SymfonyExtension implements Extension
$container->setDefinition('fob_symfony.environment_handler.context_service', $definition); $container->setDefinition('fob_symfony.environment_handler.context_service', $definition);
} }
private function loadMinkDefaultSession(ContainerBuilder $container): void
{
$minkDefaultSessionDefinition = new Definition(Session::class);
$minkDefaultSessionDefinition->setPublic(true);
$minkDefaultSessionDefinition->setFactory([new Reference('mink'), 'getSession']);
$container->setDefinition('fob_symfony.mink.default_session', $minkDefaultSessionDefinition);
}
private function loadMinkParameters(ContainerBuilder $container): void
{
$minkParametersDefinition = new Definition(MinkParameters::class, [new Parameter('mink.parameters')]);
$minkParametersDefinition->setPublic(true);
$container->setDefinition('fob_symfony.mink.parameters', $minkParametersDefinition);
}
private function registerSymfonyDriverFactory(ExtensionManager $extensionManager): void private function registerSymfonyDriverFactory(ExtensionManager $extensionManager): void
{ {
/** @var MinkExtension|null $minkExtension */ /** @var MinkExtension|null $minkExtension */