FileDirectoryTest::testFileDestination

7 file.test FileDirectoryTest::testFileDestination()
8 file.test FileDirectoryTest::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

modules/simpletest/tests/file.test, line 993
This provides SimpleTests for the core file handling functionality. These include FileValidateTest and FileSaveTest.

Code

function testFileDestination() {
  // First test for non-existent file.
  $destination = 'misc/xyz.txt';
  $path = file_destination($destination, FILE_EXISTS_REPLACE);
  $this->assertEqual($path, $destination, t('Non-existing filepath destination is correct with FILE_EXISTS_REPLACE.'), 'File');
  $path = file_destination($destination, FILE_EXISTS_RENAME);
  $this->assertEqual($path, $destination, t('Non-existing filepath destination is correct with FILE_EXISTS_RENAME.'), 'File');
  $path = file_destination($destination, FILE_EXISTS_ERROR);
  $this->assertEqual($path, $destination, t('Non-existing filepath destination is correct with FILE_EXISTS_ERROR.'), 'File');

  $destination = 'misc/druplicon.png';
  $path = file_destination($destination, FILE_EXISTS_REPLACE);
  $this->assertEqual($path, $destination, t('Existing filepath destination remains the same with FILE_EXISTS_REPLACE.'), 'File');
  $path = file_destination($destination, FILE_EXISTS_RENAME);
  $this->assertNotEqual($path, $destination, t('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, t('An error is returned when filepath destination already exists with FILE_EXISTS_ERROR.'), 'File');
}
Login or register to post comments