class LibrariesDirectoryFileFinderTest
Same name in other branches
- 9 core/tests/Drupal/Tests/Core/Asset/LibrariesDirectoryFileFinderTest.php \Drupal\Tests\Core\Asset\LibrariesDirectoryFileFinderTest
- 8.9.x core/tests/Drupal/Tests/Core/Asset/LibrariesDirectoryFileFinderTest.php \Drupal\Tests\Core\Asset\LibrariesDirectoryFileFinderTest
- 11.x core/tests/Drupal/Tests/Core/Asset/LibrariesDirectoryFileFinderTest.php \Drupal\Tests\Core\Asset\LibrariesDirectoryFileFinderTest
@coversDefaultClass \Drupal\Core\Asset\LibrariesDirectoryFileFinder @group Asset
Hierarchy
- class \Drupal\Tests\UnitTestCase extends \PHPUnit\Framework\TestCase uses \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Prophecy\PhpUnit\ProphecyTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait, \Drupal\Tests\RandomGeneratorTrait
- class \Drupal\Tests\Core\Asset\LibrariesDirectoryFileFinderTest extends \Drupal\Tests\UnitTestCase
Expanded class hierarchy of LibrariesDirectoryFileFinderTest
File
-
core/
tests/ Drupal/ Tests/ Core/ Asset/ LibrariesDirectoryFileFinderTest.php, line 16
Namespace
Drupal\Tests\Core\AssetView source
class LibrariesDirectoryFileFinderTest extends UnitTestCase {
/**
* @covers ::find
*/
public function testFind() : void {
// Place a library file in all the possible locations.
$structure = [
'sites' => [
'example.com' => [
'libraries' => [
'third_party_library' => [
'css' => [
'example.css' => '/*Some css*/',
],
],
],
],
],
'libraries' => [
'third_party_library' => [
'css' => [
'example.css' => '/*Some css*/',
],
],
],
'profiles' => [
'library_testing' => [
'libraries' => [
'third_party_library' => [
'css' => [
'example.css' => '/*Some css*/',
],
],
],
],
],
];
vfsStream::setup('root', NULL, $structure);
$extension_list = $this->prophesize(ProfileExtensionList::class);
$extension_list->getPath('library_testing')
->willReturn('profiles/library_testing');
$finder = new LibrariesDirectoryFileFinder('vfs://root', 'sites/example.com', $extension_list->reveal(), 'library_testing');
// The site specific location is the first location used.
$path = $finder->find('third_party_library/css/example.css');
$this->assertEquals('sites/example.com/libraries/third_party_library/css/example.css', $path);
// After removing the site specific location the root libraries folder
// should be used.
unlink('vfs://root/sites/example.com/libraries/third_party_library/css/example.css');
$path = $finder->find('third_party_library/css/example.css');
$this->assertEquals('libraries/third_party_library/css/example.css', $path);
// The profile's libraries is now the only remaining location.
unlink('vfs://root/libraries/third_party_library/css/example.css');
$path = $finder->find('third_party_library/css/example.css');
$this->assertEquals('profiles/library_testing/libraries/third_party_library/css/example.css', $path);
// If the libraries file cannot be found FALSE is returned.
unlink('vfs://root/profiles/library_testing/libraries/third_party_library/css/example.css');
$this->assertFalse($finder->find('third_party_library/css/example.css'));
// Test finding by the directory only. As all the directories still we'll
// find the first location.
$path = $finder->find('third_party_library');
$this->assertEquals('sites/example.com/libraries/third_party_library', $path);
}
}
Members
Title Sort descending | Deprecated | Modifiers | Object type | Summary | Overrides |
---|---|---|---|---|---|
LibrariesDirectoryFileFinderTest::testFind | public | function | @covers ::find | ||
PhpUnitWarnings::$deprecationWarnings | private static | property | Deprecation warnings from PHPUnit to raise with @trigger_error(). | ||
PhpUnitWarnings::addWarning | public | function | Converts PHPUnit deprecation warnings to E_USER_DEPRECATED. | ||
RandomGeneratorTrait::getRandomGenerator | protected | function | Gets the random generator for the utility methods. | ||
RandomGeneratorTrait::randomMachineName | protected | function | Generates a unique random string containing letters and numbers. | ||
RandomGeneratorTrait::randomObject | public | function | Generates a random PHP object. | ||
RandomGeneratorTrait::randomString | public | function | Generates a pseudo-random string of ASCII characters of codes 32 to 126. | ||
RandomGeneratorTrait::randomStringValidate | Deprecated | public | function | Callback for random string validation. | |
UnitTestCase::$root | protected | property | The app root. | 1 | |
UnitTestCase::getClassResolverStub | protected | function | Returns a stub class resolver. | ||
UnitTestCase::getConfigFactoryStub | public | function | Returns a stub config factory that behaves according to the passed array. | ||
UnitTestCase::getConfigStorageStub | public | function | Returns a stub config storage that returns the supplied configuration. | ||
UnitTestCase::getContainerWithCacheTagsInvalidator | protected | function | Sets up a container with a cache tags invalidator. | ||
UnitTestCase::getStringTranslationStub | public | function | Returns a stub translation manager that just returns the passed string. | ||
UnitTestCase::setUp | protected | function | 358 | ||
UnitTestCase::setUpBeforeClass | public static | function | |||
UnitTestCase::__get | public | function |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.