Set the aggregate resolver.
public setAggregateResolver ( AssetManager\Resolver\ResolverInterface $aggregateResolver ) | ||
$aggregateResolver | AssetManager\Resolver\ResolverInterface |
public function getCollectionResolver() { $aggregateResolver = new AggregateResolver(); $mockedResolver = $this->getResolver(__DIR__ . '/../../_files/require-jquery.js'); $collArr = array('blah.js' => array('asset-path')); $resolver = new CollectionResolver($collArr); $resolver->setAggregateResolver($aggregateResolver); $aggregateResolver->attach($mockedResolver, 500); $aggregateResolver->attach($resolver, 1000); return $resolver; }
public function testSuccessResolve() { $callbackInvocationCount = 0; $callback = function () use(&$callbackInvocationCount) { $asset1 = new Asset\StringAsset('bacon'); $asset2 = new Asset\StringAsset('eggs'); $asset3 = new Asset\StringAsset('Mud'); $asset1->mimetype = 'text/plain'; $asset2->mimetype = 'text/plain'; $asset3->mimetype = 'text/plain'; $callbackInvocationCount += 1; $assetName = "asset{$callbackInvocationCount}"; return ${$assetName}; }; $aggregateResolver = $this->getMock('AssetManager\\Resolver\\ResolverInterface'); $aggregateResolver->expects($this->exactly(3))->method('resolve')->will($this->returnCallback($callback)); $resolver = new CollectionResolver(array('myCollection' => array('bacon', 'eggs', 'mud'))); $mimeResolver = new MimeResolver(); $assetFilterManager = new AssetFilterManager(); $assetFilterManager->setMimeResolver($mimeResolver); $resolver->setAggregateResolver($aggregateResolver); $resolver->setAssetFilterManager($assetFilterManager); $collectionResolved = $resolver->resolve('myCollection'); $this->assertEquals($collectionResolved->mimetype, 'text/plain'); $this->assertTrue($collectionResolved instanceof Asset\AssetCollection); }