class LazyAssetManagerTest

Hierarchy

  • class \Assetic\Test\Factory\LazyAssetManagerTest extends \Assetic\Test\Factory\PHPUnit_Framework_TestCase

Expanded class hierarchy of LazyAssetManagerTest

File

drupal/core/vendor/kriswallsmith/assetic/tests/Assetic/Test/Factory/LazyAssetManagerTest.php, line 16

Namespace

Assetic\Test\Factory
View source
class LazyAssetManagerTest extends \PHPUnit_Framework_TestCase {
  private $factory;
  protected function setUp() {
    $this->factory = $this
      ->getMockBuilder('Assetic\\Factory\\AssetFactory')
      ->disableOriginalConstructor()
      ->getMock();
    $this->am = new LazyAssetManager($this->factory);
  }
  public function testGetFromLoader() {
    $resource = $this
      ->getMock('Assetic\\Factory\\Resource\\ResourceInterface');
    $loader = $this
      ->getMock('Assetic\\Factory\\Loader\\FormulaLoaderInterface');
    $asset = $this
      ->getMock('Assetic\\Asset\\AssetInterface');
    $formula = array(
      array(
        'js/core.js',
        'js/more.js',
      ),
      array(
        '?yui_js',
      ),
      array(
        'output' => 'js/all.js',
      ),
    );
    $loader
      ->expects($this
      ->once())
      ->method('load')
      ->with($resource)
      ->will($this
      ->returnValue(array(
      'foo' => $formula,
    )));
    $this->factory
      ->expects($this
      ->once())
      ->method('createAsset')
      ->with($formula[0], $formula[1], $formula[2] + array(
      'name' => 'foo',
    ))
      ->will($this
      ->returnValue($asset));
    $this->am
      ->setLoader('foo', $loader);
    $this->am
      ->addResource($resource, 'foo');
    $this
      ->assertSame($asset, $this->am
      ->get('foo'), '->get() returns an asset from the loader');

    // test the "once" expectations
    $this->am
      ->get('foo');
  }
  public function testGetResources() {
    $resources = array(
      $this
        ->getMock('Assetic\\Factory\\Resource\\ResourceInterface'),
      $this
        ->getMock('Assetic\\Factory\\Resource\\ResourceInterface'),
    );
    $this->am
      ->addResource($resources[0], 'foo');
    $this->am
      ->addResource($resources[1], 'bar');
    $ret = $this->am
      ->getResources();
    foreach ($resources as $resource) {
      $this
        ->assertTrue(in_array($resource, $ret, true));
    }
  }
  public function testGetResourcesEmpty() {
    $this->am
      ->getResources();
  }
  public function testSetFormula() {
    $this->am
      ->setFormula('foo', array());
    $this->am
      ->load();
    $this
      ->assertTrue($this->am
      ->hasFormula('foo'), '->load() does not remove manually added formulae');
  }
  public function testIsDebug() {
    $this->factory
      ->expects($this
      ->once())
      ->method('isDebug')
      ->will($this
      ->returnValue(false));
    $this
      ->assertSame(false, $this->am
      ->isDebug(), '->isDebug() proxies the factory');
  }

}

Members