You are here

public function ProxyClassGeneratorTest::testClassWithSleepProxyGeneration in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php \Doctrine\Tests\Common\Proxy\ProxyClassGeneratorTest::testClassWithSleepProxyGeneration()

File

vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php, line 106

Class

ProxyClassGeneratorTest
Test the proxy generator. Its work is generating on-the-fly subclasses of a given model, which implement the Proxy pattern.

Namespace

Doctrine\Tests\Common\Proxy

Code

public function testClassWithSleepProxyGeneration() {
  if (!class_exists('Doctrine\\Tests\\Common\\ProxyProxy\\__CG__\\SleepClass', false)) {
    $className = 'Doctrine\\Tests\\Common\\Proxy\\SleepClass';
    $metadata = $this
      ->createClassMetadata($className, array(
      'id',
    ));
    $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
    $this
      ->generateAndRequire($proxyGenerator, $metadata);
  }
  $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxySleepClass.php');
  $this
    ->assertEquals(1, substr_count($classCode, 'function __sleep'));
  $this
    ->assertEquals(1, substr_count($classCode, 'parent::__sleep()'));
}