class UpdateDeleteFileIfStaleTest
Same name and namespace in other branches
- 11.x core/modules/update/tests/src/Kernel/UpdateDeleteFileIfStaleTest.php \Drupal\Tests\update\Kernel\UpdateDeleteFileIfStaleTest
- 10 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\KernelTests\KernelTestBase extends \Drupal\Core\DependencyInjection\ServiceProviderInterface uses \Drupal\KernelTests\AssertLegacyTrait, \Drupal\KernelTests\AssertContentTrait, \Drupal\Tests\RandomGeneratorTrait, \Drupal\Tests\ConfigTestTrait, \Drupal\Tests\ExtensionListTestTrait, \Drupal\Tests\TestRequirementsTrait, \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait implements \PHPUnit\Framework\TestCase
- class \Drupal\Tests\update\Kernel\UpdateDeleteFileIfStaleTest implements \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);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.