public function testRegisterValidAssetsExtensionPath()
{
$app = $this->getApp();
$dir = $app['filesystem']->getDir('extensions://');
$dir->setPath('local/bolt/koala');
$ext = new AssetExtension();
$ext->setAssets([new JavaScript('test.js')]);
$ext->setContainer($app);
$ext->setBaseDirectory($dir);
$mockFile = $this->getMockBuilder(File::class)->setMethods(['exists', 'getPath'])->getMock();
$mockFile->method('exists')->willReturn(true);
$mockFile->method('getPath')->willReturn('/extensions/local/bolt/koala/test.js');
$mockDir = $this->getMockBuilder(Directory::class)->setMethods(['getFile'])->getMock();
$mockDir->method('getFile')->willReturn($mockFile);
$ext->setWebDirectory($mockDir);
//$app['filesystem'] = $mock;
$ext->register($app);
$fileQueue = $app['asset.queue.file']->getQueue();
$queued = reset($fileQueue['javascript']);
$this->assertInstanceOf('Bolt\\Asset\\File\\JavaScript', $queued);
$this->assertSame('/extensions/local/bolt/koala/test.js', $queued->getFileName());
}