/** * @covers DataUri\TwigExtension::getFilters */ public function testGetFilters() { $filters = $this->extension->getFilters(); $this->assertArrayHasKey(0, $filters); $simpleFilter = $filters[0]; $this->assertInstanceOf('\\Twig_SimpleFilter', $simpleFilter); }
public function testExtension() { $extension = new TwigExtension('foobar'); $this->assertEquals('webpack', $extension->getName()); $this->assertCount(2, $extension->getFunctions()); $this->assertCount(1, $extension->getTokenParsers()); $this->assertEquals(['js' => false, 'css' => false], $extension->webpackAsset('@AppBundle/app.js')); }
public function testGetFilters() { $extension = new TwigExtension(new \ArrayObject(['config' => ['baseUrl' => '/my/url/']])); $filters = $extension->getFilters(); $this->assertCount(1, $filters); $this->assertCount(1, $filters); $callback = $filters[0]->getCallable(); $this->assertSame('/my/url/string/', $callback('/string/')); }
/** * @dataProvider assetProvider */ public function testAssets($expected, $asset, $web_dir, $dump_path, $public_path) { $extension = new TwigExtension($web_dir, $public_path, $dump_path); $this->assertEquals($expected, $extension->webpackPublic($asset)); }
public function __construct() { parent::__construct(); $this->addOptionHtmlSafe(); $this->addFilter('moment', [$this, 'moment']); }