public function testClassLoader() { $classLoader = new ClassLoader('ClassLoaderTest'); $classLoader->setIncludePath(__DIR__); $classLoader->setFileExtension('.class.php'); $classLoader->setNamespaceSeparator('_'); $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassA'), true); $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassB'), true); $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassC'), true); }
public function testClassLoaderCheckFileExists() { $classLoader = new \Doctrine\Common\ClassLoader(); $classLoader->setBasePath('ClassLoaderTest', __DIR__); $classLoader->setCheckFileExists(true); // This would return a fatal error without check file exists true $this->assertEquals($classLoader->loadClass('SomeInvalidClass'), false); }
public function testMultipleAutoloadRequestsWillProduceSameResult() { $classLoader = new ClassLoader(); $classLoader->setIncludePath(__DIR__); $classLoader->setFileExtension('.class.php'); $classLoader->setNamespaceSeparator('_'); $this->assertTrue($classLoader->loadClass('ClassLoaderTest_ClassA')); $this->assertTrue($classLoader->loadClass('ClassLoaderTest_ClassA')); }
<?php require_once __DIR__ . '/../lib/vendor/doctrine-common/lib/Doctrine/Common/ClassLoader.php'; require_once __DIR__ . '/../lib/vendor/doctrine-common/lib/Doctrine/Common/Annotations/AnnotationRegistry.php'; use Doctrine\Common\ClassLoader; use Doctrine\Common\Annotations\AnnotationRegistry; $classLoader = new ClassLoader('Doctrine\\Tests', __DIR__ . '/../tests'); $classLoader->register(); $classLoader = new ClassLoader('Doctrine\\ODM', __DIR__ . '/../lib'); $classLoader->register(); $classLoader = new ClassLoader('Doctrine', __DIR__ . '/../lib/vendor/doctrine-common/lib'); $classLoader->register(); $classLoader = new ClassLoader('Documents', __DIR__); $classLoader->register(); $classLoader = new ClassLoader('PHPCR\\Util', __DIR__ . '/../lib/vendor/phpcr-utils/src'); $classLoader->register(); $classLoader = new ClassLoader('PHPCR', __DIR__ . '/../lib/vendor/phpcr/src'); $classLoader->register(); $classLoader = new ClassLoader('Symfony\\Component\\Console', __DIR__ . '/../lib/vendor/jackalope/lib/phpcr-utils/lib/vendor'); $classLoader->register(); $classLoader = new ClassLoader('Symfony', __DIR__ . '/../lib/vendor'); $classLoader->register(); AnnotationRegistry::registerLoader(function ($class) use($classLoader) { $classLoader->loadClass($class); return class_exists($class, false); }); AnnotationRegistry::registerFile(__DIR__ . '/../lib/Doctrine/ODM/PHPCR/Mapping/Annotations/DoctrineAnnotations.php');