name: IntegrationTest
class_comment: '# * This class tests the integration of the different compiler passes.'
dependencies:
- name: TestCase
  type: class
  source: PHPUnit\Framework\TestCase
- name: ContainerInterface
  type: class
  source: Psr\Container\ContainerInterface
- name: FileLocator
  type: class
  source: Symfony\Component\Config\FileLocator
- name: Alias
  type: class
  source: Symfony\Component\DependencyInjection\Alias
- name: BoundArgument
  type: class
  source: Symfony\Component\DependencyInjection\Argument\BoundArgument
- name: ServiceLocatorArgument
  type: class
  source: Symfony\Component\DependencyInjection\Argument\ServiceLocatorArgument
- name: TaggedIteratorArgument
  type: class
  source: Symfony\Component\DependencyInjection\Argument\TaggedIteratorArgument
- name: ChildDefinition
  type: class
  source: Symfony\Component\DependencyInjection\ChildDefinition
- name: CompilerPassInterface
  type: class
  source: Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface
- name: ContainerBuilder
  type: class
  source: Symfony\Component\DependencyInjection\ContainerBuilder
- name: Definition
  type: class
  source: Symfony\Component\DependencyInjection\Definition
- name: YamlFileLoader
  type: class
  source: Symfony\Component\DependencyInjection\Loader\YamlFileLoader
- name: Reference
  type: class
  source: Symfony\Component\DependencyInjection\Reference
- name: ServiceLocator
  type: class
  source: Symfony\Component\DependencyInjection\ServiceLocator
- name: CustomAnyAttribute
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomAnyAttribute
- name: CustomAutoconfiguration
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomAutoconfiguration
- name: CustomMethodAttribute
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomMethodAttribute
- name: CustomParameterAttribute
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomParameterAttribute
- name: CustomPropertyAttribute
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomPropertyAttribute
- name: AutoconfiguredInterface2
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\AutoconfiguredInterface2
- name: AutoconfiguredService1
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\AutoconfiguredService1
- name: AutoconfiguredService2
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\AutoconfiguredService2
- name: AutowireLocatorConsumer
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\AutowireLocatorConsumer
- name: BarTagClass
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\BarTagClass
- name: FooBarTaggedClass
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\FooBarTaggedClass
- name: FooBarTaggedForDefaultPriorityClass
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\FooBarTaggedForDefaultPriorityClass
- name: FooTagClass
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\FooTagClass
- name: StaticMethodTag
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\StaticMethodTag
- name: TaggedConsumerWithExclude
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedConsumerWithExclude
- name: TaggedIteratorConsumer
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumer
- name: TaggedIteratorConsumerWithDefaultIndexMethod
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumerWithDefaultIndexMethod
- name: TaggedIteratorConsumerWithDefaultIndexMethodAndWithDefaultPriorityMethod
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumerWithDefaultIndexMethodAndWithDefaultPriorityMethod
- name: TaggedIteratorConsumerWithDefaultPriorityMethod
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumerWithDefaultPriorityMethod
- name: TaggedLocatorConsumer
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumer
- name: TaggedLocatorConsumerConsumer
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerConsumer
- name: TaggedLocatorConsumerFactory
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerFactory
- name: TaggedLocatorConsumerWithDefaultIndexMethod
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithDefaultIndexMethod
- name: TaggedLocatorConsumerWithDefaultIndexMethodAndWithDefaultPriorityMethod
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithDefaultIndexMethodAndWithDefaultPriorityMethod
- name: TaggedLocatorConsumerWithDefaultPriorityMethod
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithDefaultPriorityMethod
- name: TaggedLocatorConsumerWithoutIndex
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithoutIndex
- name: TaggedLocatorConsumerWithServiceSubscriber
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithServiceSubscriber
- name: TaggedService1
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService1
- name: TaggedService2
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService2
- name: TaggedService3
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService3
- name: TaggedService3Configurator
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService3Configurator
- name: TaggedService4
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService4
- name: TaggedService5
  type: class
  source: Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService5
- name: ServiceProviderInterface
  type: class
  source: Symfony\Contracts\Service\ServiceProviderInterface
- name: ServiceSubscriberInterface
  type: class
  source: Symfony\Contracts\Service\ServiceSubscriberInterface
properties:
- name: inner
  visibility: public
  comment: null
methods:
- name: testProcessRemovesAndInlinesRecursively
  visibility: public
  parameters: []
  comment: '# * This class tests the integration of the different compiler passes.

    # */

    # class IntegrationTest extends TestCase

    # {

    # /**

    # * This tests that dependencies are correctly processed.

    # *

    # * We''re checking that:

    # *

    # *   * A is public, B/C are private

    # *   * A -> C

    # *   * B -> C'
- name: testProcessInlinesReferencesToAliases
  visibility: public
  parameters: []
  comment: null
- name: testProcessInlinesWhenThereAreMultipleReferencesButFromTheSameDefinition
  visibility: public
  parameters: []
  comment: null
- name: testCanDecorateServiceSubscriberUsingBinding
  visibility: public
  parameters: []
  comment: null
- name: testCanDecorateServiceSubscriberReplacingArgument
  visibility: public
  parameters: []
  comment: null
- name: testCanDecorateServiceLocator
  visibility: public
  parameters: []
  comment: null
- name: testAliasDecoratedService
  visibility: public
  parameters: []
  comment: null
- name: testYamlContainerCompiles
  visibility: public
  parameters:
  - name: directory
  - name: actualServiceId
  - name: expectedServiceId
  - name: mainContainer
    default: 'null'
  comment: '# * @dataProvider getYamlCompileTests'
- name: getYamlCompileTests
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceWithIndexAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceWithIndexAttributeAndDefaultMethod
  visibility: public
  parameters: []
  comment: null
- name: testLocatorConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceWithIndexAttributeAndDefaultMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedIteratorWithDefaultIndexMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedIteratorWithDefaultPriorityMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedIteratorWithDefaultIndexMethodAndWithDefaultPriorityMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedLocatorConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedLocatorConfiguredViaAttributeWithoutIndex
  visibility: public
  parameters: []
  comment: null
- name: testTaggedLocatorWithDefaultIndexMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedLocatorWithDefaultPriorityMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedLocatorWithDefaultIndexMethodAndWithDefaultPriorityMethodConfiguredViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testNestedDefinitionWithAutoconfiguredConstructorArgument
  visibility: public
  parameters: []
  comment: null
- name: testFactoryWithAutoconfiguredArgument
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceWithDefaultPriorityMethod
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceLocatorWithIndexAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceLocatorWithMultipleIndexAttribute
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceLocatorWithIndexAttributeAndDefaultMethod
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceLocatorWithFallback
  visibility: public
  parameters: []
  comment: null
- name: testTaggedServiceLocatorWithDefaultIndex
  visibility: public
  parameters: []
  comment: null
- name: testTagsViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testAttributesAreIgnored
  visibility: public
  parameters: []
  comment: null
- name: testTagsViaAttributeOnPropertyMethodAndParameter
  visibility: public
  parameters: []
  comment: null
- name: testAutoconfigureViaAttribute
  visibility: public
  parameters: []
  comment: null
- name: testAttributeAutoconfigurationOnStaticMethod
  visibility: public
  parameters: []
  comment: null
- name: testTaggedIteratorAndLocatorWithExclude
  visibility: public
  parameters: []
  comment: null
- name: testAutowireAttributeHasPriorityOverBindings
  visibility: public
  parameters: []
  comment: null
- name: testBindingsWithAutowireAttributeAndAutowireFalse
  visibility: public
  parameters: []
  comment: null
- name: __construct
  visibility: public
  parameters:
  - name: container
  comment: null
- name: getSubscribedServices
  visibility: public
  parameters: []
  comment: null
- name: __construct
  visibility: public
  parameters:
  - name: locator
  comment: null
- name: get
  visibility: public
  parameters:
  - name: id
  comment: null
- name: has
  visibility: public
  parameters:
  - name: id
  comment: null
- name: getProvidedServices
  visibility: public
  parameters: []
  comment: null
- name: enableSummer
  visibility: public
  parameters:
  - name: enable
  comment: null
- name: setSunshine
  visibility: public
  parameters:
  - name: type
  comment: null
- name: process
  visibility: public
  parameters:
  - name: container
  comment: null
traits:
- PHPUnit\Framework\TestCase
- Psr\Container\ContainerInterface
- Symfony\Component\Config\FileLocator
- Symfony\Component\DependencyInjection\Alias
- Symfony\Component\DependencyInjection\Argument\BoundArgument
- Symfony\Component\DependencyInjection\Argument\ServiceLocatorArgument
- Symfony\Component\DependencyInjection\Argument\TaggedIteratorArgument
- Symfony\Component\DependencyInjection\ChildDefinition
- Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface
- Symfony\Component\DependencyInjection\ContainerBuilder
- Symfony\Component\DependencyInjection\Definition
- Symfony\Component\DependencyInjection\Loader\YamlFileLoader
- Symfony\Component\DependencyInjection\Reference
- Symfony\Component\DependencyInjection\ServiceLocator
- Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomAnyAttribute
- Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomAutoconfiguration
- Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomMethodAttribute
- Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomParameterAttribute
- Symfony\Component\DependencyInjection\Tests\Fixtures\Attribute\CustomPropertyAttribute
- Symfony\Component\DependencyInjection\Tests\Fixtures\AutoconfiguredInterface2
- Symfony\Component\DependencyInjection\Tests\Fixtures\AutoconfiguredService1
- Symfony\Component\DependencyInjection\Tests\Fixtures\AutoconfiguredService2
- Symfony\Component\DependencyInjection\Tests\Fixtures\AutowireLocatorConsumer
- Symfony\Component\DependencyInjection\Tests\Fixtures\BarTagClass
- Symfony\Component\DependencyInjection\Tests\Fixtures\FooBarTaggedClass
- Symfony\Component\DependencyInjection\Tests\Fixtures\FooBarTaggedForDefaultPriorityClass
- Symfony\Component\DependencyInjection\Tests\Fixtures\FooTagClass
- Symfony\Component\DependencyInjection\Tests\Fixtures\StaticMethodTag
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedConsumerWithExclude
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumer
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumerWithDefaultIndexMethod
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumerWithDefaultIndexMethodAndWithDefaultPriorityMethod
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedIteratorConsumerWithDefaultPriorityMethod
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumer
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerConsumer
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerFactory
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithDefaultIndexMethod
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithDefaultIndexMethodAndWithDefaultPriorityMethod
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithDefaultPriorityMethod
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithoutIndex
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedLocatorConsumerWithServiceSubscriber
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService1
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService2
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService3
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService3Configurator
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService4
- Symfony\Component\DependencyInjection\Tests\Fixtures\TaggedService5
- Symfony\Contracts\Service\ServiceProviderInterface
- Symfony\Contracts\Service\ServiceSubscriberInterface
interfaces:
- ServiceSubscriberInterface
- ServiceProviderInterface
- CompilerPassInterface