friends-of-behat/service-container-extension

Allows to declare own services inside Behat container without writing an extension.

Maintainers

👁 Stof
👁 pamil

Package info

github.com/FriendsOfBehat/ServiceContainerExtension

pkg:composer/friends-of-behat/service-container-extension

Statistics

Installs: 837 474

Dependents: 74

Suggesters: 0

Stars: 114

Open Issues: 0

v2.0.0 2026-06-12 14:27 UTC

Requires

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 254d16f3983365b2dd3555484a11d4ce7d0bca2b


README

Allows to declare own services inside Behat container without writing an extension.

Usage

  1. Install it:

    $ composer require friends-of-behat/service-container-extension --dev
  2. Enable this extension and configure Behat to use it:

    # behat.yml
    default:
     # ...
     extensions:
     FriendsOfBehat\ServiceContainerExtension:
     imports:
     - "features/bootstrap/config/services.xml"
     - "features/bootstrap/config/services.yml"
     - "features/bootstrap/config/services.php"
  3. Write services files definitions:

    <!-- features/bootstrap/config/services.xml -->
    <?xml version="1.0" encoding="UTF-8" ?>
    <container xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://symfony.com/schema/dic/services">
     <services>
     <service id="acme.my_service" class="Acme\MyService" />
     </services>
    </container>
    # features/bootstrap/config/services.yml
    services:
     acme.my_service:
     class: Acme\MyService
    // features/bootstrap/config/services.php
    use Symfony\Component\DependencyInjection\Definition;
    
    $container->setDefinition('acme.my_service', new Definition(\Acme\MyService::class));