class UpdateDeleteFileIfStaleTest in Drupal 10
Same name and namespace in other branches
- 8 core/modules/update/tests/src/Kernel/UpdateDeleteFileIfStaleTest.php \Drupal\Tests\update\Kernel\UpdateDeleteFileIfStaleTest
- 9 core/modules/update/tests/src/Kernel/UpdateDeleteFileIfStaleTest.php \Drupal\Tests\update\Kernel\UpdateDeleteFileIfStaleTest
Tests the update_delete_file_if_stale() function.
@group update
Hierarchy
- class \Drupal\Tests\update\Kernel\UpdateDeleteFileIfStaleTest extends \Drupal\KernelTests\KernelTestBase
Expanded class hierarchy of UpdateDeleteFileIfStaleTest
File
- core/
modules/ update/ tests/ src/ Kernel/ UpdateDeleteFileIfStaleTest.php, line 12
Namespace
Drupal\Tests\update\KernelView source
class UpdateDeleteFileIfStaleTest extends KernelTestBase {
/**
* {@inheritdoc}
*/
protected static $modules = [
'system',
'update',
];
/**
* Tests the deletion of stale files.
*/
public function testUpdateDeleteFileIfStale() {
$file_system = $this->container
->get('file_system');
$file_name = $file_system
->saveData($this
->randomMachineName(), 'public://');
$this
->assertNotNull($file_name);
$file_path = $file_system
->realpath($file_name);
// During testing, the file change and the stale checking occurs in the same
// request, so the beginning of request will be before the file changes and
// REQUEST_TIME - $filectime is negative or zero. Set the maximum age to a
// number greater than that.
$this
->config('system.file')
->set('temporary_maximum_age', 100000)
->save();
// First test that the file is not stale and thus not deleted.
$deleted = update_delete_file_if_stale($file_path);
$this
->assertFalse($deleted);
$this
->assertFileExists($file_path);
// Set the maximum age to a number smaller than REQUEST_TIME - $filectime.
$this
->config('system.file')
->set('temporary_maximum_age', -100000)
->save();
// Now attempt to delete the file; as it should be considered stale, this
// attempt should succeed.
$deleted = update_delete_file_if_stale($file_path);
$this
->assertTrue($deleted);
$this
->assertFileDoesNotExist($file_path);
}
}