コード例 #1
0
ファイル: filter.php プロジェクト: kylekatarnls/jade-php
    public function testFilterAutoload()
    {
        $jade = new Jade();
        $this->assertFalse($jade->hasFilter('foo-bar'));
        spl_autoload_register(function ($name) {
            $name = explode('\\', $name);
            $file = __DIR__ . '/../lib/' . end($name) . 'Filter.php';
            if (file_exists($file)) {
                include_once $file;
            }
        });
        $jade->setOption('filterAutoLoad', false);
        $this->assertFalse($jade->hasFilter('foo-bar'));
        $this->assertSame($jade->getFilter('foo-bar'), null);
        $jade->setOption('filterAutoLoad', true);
        $this->assertTrue($jade->hasFilter('foo-bar'));
        $this->assertSame($jade->getFilter('foo-bar'), 'Jade\\Filter\\FooBar');
        $actual = $jade->render('
div
    p
        :foo-bar
            I\'m so small :(
');
        $expected = '<div><p>I\'M SO TALL :)</p></div>';
        $this->assertSame(preg_replace('`\\s`', '', $expected), preg_replace('`\\s`', '', $actual), 'Autoloaded filter');
    }