Add a Mustache Autoloader implementation.

This commit is contained in:
Justin Hileman
2012-03-01 07:09:36 -08:00
parent 1f97e2cb5e
commit 01312d3e98
6 changed files with 103 additions and 12 deletions
+28
View File
@@ -0,0 +1,28 @@
<?php
namespace Mustache\Test;
use Mustache\Autoloader;
/**
* @group unit
*/
class AutoloaderTest extends \PHPUnit_Framework_TestCase {
public function testRegister() {
$loader = Autoloader::register();
$this->assertTrue(spl_autoload_unregister(array($loader, 'autoload')));
}
public function testAutoloader() {
$loader = new Autoloader(__DIR__.'/../../fixtures/autoloader');
$this->assertNull($loader->autoload('NonMustacheClass'));
$this->assertFalse(class_exists('NonMustacheClass'));
$loader->autoload('Mustache\Foo');
$this->assertTrue(class_exists('Mustache\Foo'));
$loader->autoload('\Mustache\Bar');
$this->assertTrue(class_exists('Mustache\Bar'));
}
}
+2 -12
View File
@@ -1,16 +1,6 @@
<?php
require __DIR__.'/../src/Mustache/Buffer.php';
require __DIR__.'/../src/Mustache/Compiler.php';
require __DIR__.'/../src/Mustache/Context.php';
require __DIR__.'/../src/Mustache/Loader.php';
require __DIR__.'/../src/Mustache/Loader/MutableLoader.php';
require __DIR__.'/../src/Mustache/Loader/ArrayLoader.php';
require __DIR__.'/../src/Mustache/Loader/FilesystemLoader.php';
require __DIR__.'/../src/Mustache/Loader/StringLoader.php';
require __DIR__.'/../src/Mustache/Mustache.php';
require __DIR__.'/../src/Mustache/Parser.php';
require __DIR__.'/../src/Mustache/Template.php';
require __DIR__.'/../src/Mustache/Tokenizer.php';
require __DIR__.'/../src/Mustache/Autoloader.php';
\Mustache\Autoloader::register();
require __DIR__.'/lib/yaml/lib/sfYamlParser.php';
+7
View File
@@ -0,0 +1,7 @@
<?php
namespace Mustache;
class Bar {
// nada
}
+7
View File
@@ -0,0 +1,7 @@
<?php
namespace Mustache;
class Foo {
// nada
}
+5
View File
@@ -0,0 +1,5 @@
<?php
class NonMustacheClass {
// noop
}