FileMoveTest.php in Drupal 10
File
core/modules/image/tests/src/Functional/FileMoveTest.php
View source
<?php
namespace Drupal\Tests\image\Functional;
use Drupal\Core\File\FileSystemInterface;
use Drupal\file\Entity\File;
use Drupal\image\Entity\ImageStyle;
use Drupal\Tests\BrowserTestBase;
use Drupal\Tests\TestFileCreationTrait;
class FileMoveTest extends BrowserTestBase {
use TestFileCreationTrait {
getTestFiles as drupalGetTestFiles;
compareFiles as drupalCompareFiles;
}
protected static $modules = [
'image',
];
protected $defaultTheme = 'stark';
protected $fileRepository;
protected function setUp() : void {
parent::setUp();
$this->fileRepository = $this->container
->get('file.repository');
}
public function testNormal() {
$file = File::create((array) current($this
->drupalGetTestFiles('image')));
$styles = ImageStyle::loadMultiple();
$style = reset($styles);
$original_uri = $file
->getFileUri();
$derivative_uri = $style
->buildUri($original_uri);
$style
->createDerivative($original_uri, $derivative_uri);
$this
->assertFileExists($derivative_uri);
$desired_filepath = 'public://' . $this
->randomMachineName();
$result = $this->fileRepository
->move(clone $file, $desired_filepath, FileSystemInterface::EXISTS_ERROR);
$this
->assertFileExists($result
->getFileUri());
$this
->assertFileDoesNotExist($derivative_uri);
}
}
Classes
Name |
Description |
FileMoveTest |
Tests the file move function for images and image styles. |