/** * {@inheritdoc} */ public function load($id) { $definition = $this->definitionDiscovery->getDefinition($id); $library_type = $this->getLibraryType($id, $definition); // @todo Throw an exception instead of silently failing. if ($library_type instanceof LibraryLoadingListenerInterface) { $library_type->onLibraryLoad($this->getLibraryFromDefinition($id, $definition)); } }
/** * Tests that remote definitions are written locally. */ public function testRemoteFetching() { $library_id = 'test_asset_library'; $expected_definition = ['type' => 'asset', 'version_detector' => ['id' => 'static', 'configuration' => ['version' => '1.0.0']], 'remote_url' => 'http://example.com', 'css' => ['base' => ['example.css' => []]], 'js' => ['example.js' => []]]; $this->assertFalse($this->localDiscovery->hasDefinition($library_id)); $this->assertTrue($this->remoteDiscovery->hasDefinition($library_id)); $this->assertEquals($this->remoteDiscovery->getDefinition($library_id), $expected_definition); $this->assertTrue($this->discovery->hasDefinition($library_id)); $this->assertEquals($this->discovery->getDefinition($library_id), $expected_definition); $this->assertTrue($this->localDiscovery->hasDefinition($library_id)); $this->assertEquals($this->localDiscovery->getDefinition($library_id), $expected_definition); }