You are here

function DirectoryTest::testFileDestination in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/modules/system/src/Tests/File/DirectoryTest.php \Drupal\system\Tests\File\DirectoryTest::testFileDestination()

This will test the filepath for a destination based on passed flags and whether or not the file exists.

If a file exists, file_destination($destination, $replace) will either return:

If the file doesn't currently exist, then it will simply return the filepath.

File

core/modules/system/src/Tests/File/DirectoryTest.php, line 137
Contains \Drupal\system\Tests\File\DirectoryTest.

Class

DirectoryTest
Tests operations dealing with directories.

Namespace

Drupal\system\Tests\File

Code

function testFileDestination() {

  // First test for non-existent file.
  $destination = 'core/misc/xyz.txt';
  $path = file_destination($destination, FILE_EXISTS_REPLACE);
  $this
    ->assertEqual($path, $destination, 'Non-existing filepath destination is correct with FILE_EXISTS_REPLACE.', 'File');
  $path = file_destination($destination, FILE_EXISTS_RENAME);
  $this
    ->assertEqual($path, $destination, 'Non-existing filepath destination is correct with FILE_EXISTS_RENAME.', 'File');
  $path = file_destination($destination, FILE_EXISTS_ERROR);
  $this
    ->assertEqual($path, $destination, 'Non-existing filepath destination is correct with FILE_EXISTS_ERROR.', 'File');
  $destination = 'core/misc/druplicon.png';
  $path = file_destination($destination, FILE_EXISTS_REPLACE);
  $this
    ->assertEqual($path, $destination, 'Existing filepath destination remains the same with FILE_EXISTS_REPLACE.', 'File');
  $path = file_destination($destination, FILE_EXISTS_RENAME);
  $this
    ->assertNotEqual($path, $destination, 'A new filepath destination is created when filepath destination already exists with FILE_EXISTS_RENAME.', 'File');
  $path = file_destination($destination, FILE_EXISTS_ERROR);
  $this
    ->assertEqual($path, FALSE, 'An error is returned when filepath destination already exists with FILE_EXISTS_ERROR.', 'File');
}