You are here

class TestLibraryFilesStream in Libraries API 8.3

Provides a stream wrapper for accessing test library files.

Hierarchy

Expanded class hierarchy of TestLibraryFilesStream

4 files declare their use of TestLibraryFilesStream
AssetLibraryTest.php in tests/src/Kernel/ExternalLibrary/Asset/AssetLibraryTest.php
GlobalLocatorTest.php in tests/src/Kernel/ExternalLibrary/GlobalLocatorTest.php
MultipleAssetLibraryTest.php in tests/src/Kernel/ExternalLibrary/Asset/MultipleAssetLibraryTest.php
PhpFileLibraryTest.php in tests/src/Kernel/ExternalLibrary/PhpFile/PhpFileLibraryTest.php

File

tests/src/Kernel/ExternalLibrary/TestLibraryFilesStream.php, line 15

Namespace

Drupal\Tests\libraries\Kernel\ExternalLibrary
View source
class TestLibraryFilesStream extends LocalStream {
  use LocalHiddenStreamTrait;
  use PrivateStreamTrait;
  use StringTranslationTrait;

  /**
   * The module handler.
   *
   * @var \Drupal\Core\Extension\ModuleHandlerInterface
   */
  protected $moduleHandler;

  /**
   * The test directory.
   *
   * @var string
   */
  protected $directory;

  /**
   * Constructs a stream wrapper for test library files.
   *
   * Dependency injection is generally not possible to implement for stream
   * wrappers, because stream wrappers are initialized before the container is
   * booted, but this stream wrapper is only registered explicitly from tests
   * so it is possible here.
   *
   * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler
   *   The module handler.
   * @param \Drupal\Core\StringTranslation\TranslationInterface $string_translation
   *   The string translation handler.
   * @param string $directory
   *   The directory within the Libraries API's tests directory that is to be
   *   searched for test library files.
   */
  public function __construct(ModuleHandlerInterface $module_handler, TranslationInterface $string_translation, $directory) {
    $this->moduleHandler = $module_handler;
    $this->directory = (string) $directory;
    $this
      ->setStringTranslation($string_translation);
  }

  /**
   * {@inheritdoc}
   */
  public function getName() {
    $this
      ->t('Test library files');
  }

  /**
   * {@inheritdoc}
   */
  public function getDescription() {
    $this
      ->t('Provides access to test library files.');
  }

  /**
   * {@inheritdoc}
   */
  public function getDirectoryPath() {
    $module_path = $this->moduleHandler
      ->getModule('libraries')
      ->getPath();
    return $module_path . '/tests/' . $this->directory;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
LocalHiddenStreamTrait::getType public static function Returns the type of stream wrapper.
LocalStream::$context public property Stream context resource.
LocalStream::$handle public property A generic resource handle.
LocalStream::$uri protected property Instance URI (stream).
LocalStream::dirname public function Gets the name of the directory from a given path. Overrides StreamWrapperInterface::dirname
LocalStream::dir_closedir public function Support for closedir(). Overrides PhpStreamWrapperInterface::dir_closedir
LocalStream::dir_opendir public function Support for opendir(). Overrides PhpStreamWrapperInterface::dir_opendir
LocalStream::dir_readdir public function Support for readdir(). Overrides PhpStreamWrapperInterface::dir_readdir
LocalStream::dir_rewinddir public function Support for rewinddir(). Overrides PhpStreamWrapperInterface::dir_rewinddir
LocalStream::getFileSystem private function Returns file system service.
LocalStream::getLocalPath protected function Returns the canonical absolute path of the URI, if possible.
LocalStream::getTarget protected function Returns the local writable target of the resource within the stream.
LocalStream::getUri public function Returns the stream resource URI. Overrides StreamWrapperInterface::getUri
LocalStream::mkdir public function Support for mkdir(). Overrides PhpStreamWrapperInterface::mkdir 1
LocalStream::realpath public function Returns canonical, absolute path of the resource. Overrides StreamWrapperInterface::realpath 1
LocalStream::rename public function Support for rename(). Overrides PhpStreamWrapperInterface::rename 1
LocalStream::rmdir public function Support for rmdir(). Overrides PhpStreamWrapperInterface::rmdir 1
LocalStream::setUri public function Sets the absolute stream resource URI. Overrides StreamWrapperInterface::setUri
LocalStream::stream_cast public function Retrieve the underlying stream resource. Overrides PhpStreamWrapperInterface::stream_cast
LocalStream::stream_close public function Support for fclose(). Overrides PhpStreamWrapperInterface::stream_close
LocalStream::stream_eof public function Support for feof(). Overrides PhpStreamWrapperInterface::stream_eof
LocalStream::stream_flush public function Support for fflush(). Overrides PhpStreamWrapperInterface::stream_flush 1
LocalStream::stream_lock public function Support for flock(). Overrides PhpStreamWrapperInterface::stream_lock 1
LocalStream::stream_metadata public function Sets metadata on the stream. Overrides PhpStreamWrapperInterface::stream_metadata 1
LocalStream::stream_open public function Support for fopen(), file_get_contents(), file_put_contents() etc. Overrides PhpStreamWrapperInterface::stream_open 1
LocalStream::stream_read public function Support for fread(), file_get_contents() etc. Overrides PhpStreamWrapperInterface::stream_read
LocalStream::stream_seek public function Seeks to specific location in a stream. Overrides PhpStreamWrapperInterface::stream_seek
LocalStream::stream_set_option public function Since Windows systems do not allow it and it is not needed for most use cases anyway, this method is not supported on local files and will trigger an error and return false. If needed, custom subclasses can provide OS-specific implementations for… Overrides PhpStreamWrapperInterface::stream_set_option
LocalStream::stream_stat public function Support for fstat(). Overrides PhpStreamWrapperInterface::stream_stat
LocalStream::stream_tell public function Support for ftell(). Overrides PhpStreamWrapperInterface::stream_tell
LocalStream::stream_truncate public function Truncate stream. Overrides PhpStreamWrapperInterface::stream_truncate 1
LocalStream::stream_write public function Support for fwrite(), file_put_contents() etc. Overrides PhpStreamWrapperInterface::stream_write 1
LocalStream::unlink public function Support for unlink(). Overrides PhpStreamWrapperInterface::unlink 1
LocalStream::url_stat public function Support for stat(). Overrides PhpStreamWrapperInterface::url_stat
PrivateStreamTrait::getExternalUrl function Returns a web accessible URL for the resource.
StreamWrapperInterface::ALL constant A filter that matches all wrappers.
StreamWrapperInterface::HIDDEN constant Defines the stream wrapper bit flag for a hidden file.
StreamWrapperInterface::LOCAL constant Refers to a local file system location.
StreamWrapperInterface::LOCAL_HIDDEN constant Hidden, readable and writable using local files.
StreamWrapperInterface::LOCAL_NORMAL constant Visible, readable and writable using local files.
StreamWrapperInterface::NORMAL constant This is the default 'type' flag. This does not include StreamWrapperInterface::LOCAL, because PHP grants a greater trust level to local files (for example, they can be used in an "include" statement, regardless of the…
StreamWrapperInterface::READ constant Wrapper is readable (almost always true).
StreamWrapperInterface::READ_VISIBLE constant Visible and read-only.
StreamWrapperInterface::VISIBLE constant Exposed in the UI and potentially web accessible.
StreamWrapperInterface::WRITE constant Wrapper is writable.
StreamWrapperInterface::WRITE_VISIBLE constant Visible, readable and writable.
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.
TestLibraryFilesStream::$directory protected property The test directory.
TestLibraryFilesStream::$moduleHandler protected property The module handler.
TestLibraryFilesStream::getDescription public function Returns the description of the stream wrapper for use in the UI. Overrides StreamWrapperInterface::getDescription
TestLibraryFilesStream::getDirectoryPath public function Gets the path that the wrapper is responsible for. Overrides LocalStream::getDirectoryPath
TestLibraryFilesStream::getName public function Returns the name of the stream wrapper for use in the UI. Overrides PrivateStreamTrait::getName
TestLibraryFilesStream::__construct public function Constructs a stream wrapper for test library files.