class CheckReferenceValidityPassTest in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/symfony/dependency-injection/Tests/Compiler/CheckReferenceValidityPassTest.php \Symfony\Component\DependencyInjection\Tests\Compiler\CheckReferenceValidityPassTest
Hierarchy
- class \Symfony\Component\DependencyInjection\Tests\Compiler\CheckReferenceValidityPassTest extends \Symfony\Component\DependencyInjection\Tests\Compiler\PHPUnit_Framework_TestCase
Expanded class hierarchy of CheckReferenceValidityPassTest
File
- vendor/symfony/ dependency-injection/ Tests/ Compiler/ CheckReferenceValidityPassTest.php, line 20 
Namespace
Symfony\Component\DependencyInjection\Tests\CompilerView source
class CheckReferenceValidityPassTest extends \PHPUnit_Framework_TestCase {
  public function testProcessIgnoresScopeWideningIfNonStrictReference() {
    $container = new ContainerBuilder();
    $container
      ->register('a')
      ->addArgument(new Reference('b', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, false));
    $container
      ->register('b')
      ->setScope('prototype');
    $this
      ->process($container);
  }
  /**
   * @expectedException \RuntimeException
   */
  public function testProcessDetectsScopeWidening() {
    $container = new ContainerBuilder();
    $container
      ->register('a')
      ->addArgument(new Reference('b'));
    $container
      ->register('b')
      ->setScope('prototype');
    $this
      ->process($container);
  }
  public function testProcessIgnoresCrossScopeHierarchyReferenceIfNotStrict() {
    $container = new ContainerBuilder();
    $container
      ->addScope(new Scope('a'));
    $container
      ->addScope(new Scope('b'));
    $container
      ->register('a')
      ->setScope('a')
      ->addArgument(new Reference('b', ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE, false));
    $container
      ->register('b')
      ->setScope('b');
    $this
      ->process($container);
  }
  /**
   * @expectedException \RuntimeException
   */
  public function testProcessDetectsCrossScopeHierarchyReference() {
    $container = new ContainerBuilder();
    $container
      ->addScope(new Scope('a'));
    $container
      ->addScope(new Scope('b'));
    $container
      ->register('a')
      ->setScope('a')
      ->addArgument(new Reference('b'));
    $container
      ->register('b')
      ->setScope('b');
    $this
      ->process($container);
  }
  /**
   * @expectedException \RuntimeException
   */
  public function testProcessDetectsReferenceToAbstractDefinition() {
    $container = new ContainerBuilder();
    $container
      ->register('a')
      ->setAbstract(true);
    $container
      ->register('b')
      ->addArgument(new Reference('a'));
    $this
      ->process($container);
  }
  public function testProcess() {
    $container = new ContainerBuilder();
    $container
      ->register('a')
      ->addArgument(new Reference('b'));
    $container
      ->register('b');
    $this
      ->process($container);
  }
  protected function process(ContainerBuilder $container) {
    $pass = new CheckReferenceValidityPass();
    $pass
      ->process($container);
  }
}Members
| Name   | Modifiers | Type | Description | Overrides | 
|---|---|---|---|---|
| CheckReferenceValidityPassTest:: | protected | function | ||
| CheckReferenceValidityPassTest:: | public | function | ||
| CheckReferenceValidityPassTest:: | public | function | @expectedException \RuntimeException | |
| CheckReferenceValidityPassTest:: | public | function | @expectedException \RuntimeException | |
| CheckReferenceValidityPassTest:: | public | function | @expectedException \RuntimeException | |
| CheckReferenceValidityPassTest:: | public | function | ||
| CheckReferenceValidityPassTest:: | public | function | 
