1 file.test | FileUnmanagedMoveTest::testOverwriteSelf() |
Try to move a file onto itself.
File
- core/
modules/ simpletest/ tests/ file.test, line 1587 - This provides SimpleTests for the core file handling functionality. These include FileValidateTest and FileSaveTest.
Class
- FileUnmanagedMoveTest
- Unmanaged move related tests.
Code
function testOverwriteSelf() {
// Create a file for testing.
$file = $this->createFile();
// Move the file onto itself without renaming shouldn't make changes.
$new_filepath = file_unmanaged_move($file->uri, $file->uri, FILE_EXISTS_REPLACE);
$this->assertFalse($new_filepath, 'Moving onto itself without renaming fails.');
$this->assertTrue(file_exists($file->uri), 'File exists after moving onto itself.');
// Move the file onto itself with renaming will result in a new filename.
$new_filepath = file_unmanaged_move($file->uri, $file->uri, FILE_EXISTS_RENAME);
$this->assertTrue($new_filepath, 'Moving onto itself with renaming works.');
$this->assertFalse(file_exists($file->uri), 'Original file has been removed.');
$this->assertTrue(file_exists($new_filepath), 'File exists after moving onto itself.');
}