class LibrariesDirectoryFileFinderTest
@coversDefaultClass \Drupal\Core\Asset\LibrariesDirectoryFileFinder
      
    
@group Asset
Hierarchy
- class \Drupal\Tests\UnitTestCase uses \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Prophecy\PhpUnit\ProphecyTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait, \Drupal\Tests\RandomGeneratorTrait extends \PHPUnit\Framework\TestCase- 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[[api-linebreak]] | ||
| 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 | 357 | ||
| 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.
