ClassLoaderTest.php 1.04 KB
Newer Older
1 2 3 4 5 6
<?php

namespace Doctrine\Tests\Common;

use Doctrine\Common\ClassLoader;

romanb's avatar
romanb committed
7 8
require_once __DIR__ . '/../TestInit.php';

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
class ClassLoaderTest extends \Doctrine\Tests\DoctrineTestCase
{
    public function testCustomFileExtensionAndNamespaceSeparator()
    {
        $classLoader = new \Doctrine\Common\ClassLoader();
        $classLoader->setBasePath('ClassLoaderTest', __DIR__);
        $classLoader->setClassFileExtension('.class.php');
        $classLoader->setNamespaceSeparator('_');

        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassA'), true);
        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassB'), 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);
    }
}