From 463c274dbc3a44551993c044d4e53ab6ae948bea Mon Sep 17 00:00:00 2001 From: Kamil Kokot Date: Mon, 31 Dec 2018 16:53:20 +0100 Subject: [PATCH] Create minimal passing scenario --- features/not_crashing_behat.feature | 164 ------------------ features/running_bare_behat_scenarios.feature | 51 ++++++ src/ServiceContainer/SymfonyExtension.php | 11 +- 3 files changed, 59 insertions(+), 167 deletions(-) delete mode 100644 features/not_crashing_behat.feature create mode 100644 features/running_bare_behat_scenarios.feature diff --git a/features/not_crashing_behat.feature b/features/not_crashing_behat.feature deleted file mode 100644 index e1728ff..0000000 --- a/features/not_crashing_behat.feature +++ /dev/null @@ -1,164 +0,0 @@ -Feature: Not crashing Behat - In order to use this extension - As a Behat User - I want to have Behat up and running after enabling this extension - - Scenario: Successful boot the Symfony kernel with autoconfiguration - Given a Behat configuration containing: - """ - default: - extensions: - FriendsOfBehat\SymfonyExtension: ~ - """ - And a file "app/autoload.php" containing: - """ - load(function (ContainerBuilder $container): void { + $container->loadFromExtension('framework', [ + 'test' => $this->getEnvironment() === 'test', + 'secret' => 'Pigeon', + ]); + }); + } + } + """ + And a feature file with passing scenario + When I run Behat + Then it should pass diff --git a/src/ServiceContainer/SymfonyExtension.php b/src/ServiceContainer/SymfonyExtension.php index fac137b..215054c 100644 --- a/src/ServiceContainer/SymfonyExtension.php +++ b/src/ServiceContainer/SymfonyExtension.php @@ -50,12 +50,13 @@ final class SymfonyExtension implements Extension { $builder ->children() - ->scalarNode('env_file')->end() + ->scalarNode('env_file')->defaultNull()->end() ->arrayNode('kernel') ->addDefaultsIfNotSet() ->children() - ->scalarNode('class')->defaultValue('App\\Kernel')->end() - ->scalarNode('env')->defaultValue('test')->end() + ->scalarNode('path')->defaultNull()->end() + ->scalarNode('class')->isRequired()->end() + ->scalarNode('env')->defaultValue('test')->cannotBeEmpty()->end() ->booleanNode('debug')->defaultTrue()->end() ->end() ->end() @@ -115,6 +116,10 @@ final class SymfonyExtension implements Extension $definition->addMethodCall('boot'); $definition->setPublic(true); + if (null !== $config['path']) { + $definition->setFile($config['path']); + } + $container->setDefinition(self::KERNEL_ID, $definition); }