class FileSaveUploadTest
Same name and namespace in other branches
- 10 core/modules/file/tests/src/Kernel/FileSaveUploadTest.php \Drupal\Tests\file\Kernel\FileSaveUploadTest
- 7.x modules/simpletest/tests/file.test \FileSaveUploadTest
Tests file_save_upload().
@group file
Hierarchy
- class \Drupal\KernelTests\KernelTestBase implements \Drupal\Core\DependencyInjection\ServiceProviderInterface uses \Drupal\KernelTests\AssertContentTrait, \Drupal\Tests\RandomGeneratorTrait, \Drupal\Tests\ConfigTestTrait, \Drupal\Tests\ExtensionListTestTrait, \Drupal\Tests\TestRequirementsTrait, \Drupal\Tests\PhpUnitCompatibilityTrait, \Prophecy\PhpUnit\ProphecyTrait, \Drupal\TestTools\Extension\DeprecationBridge\ExpectDeprecationTrait extends \PHPUnit\Framework\TestCase
- class \Drupal\Tests\file\Kernel\FileSaveUploadTest extends \Drupal\KernelTests\KernelTestBase
Expanded class hierarchy of FileSaveUploadTest
File
-
core/
modules/ file/ tests/ src/ Kernel/ FileSaveUploadTest.php, line 21
Namespace
Drupal\Tests\file\KernelView source
class FileSaveUploadTest extends KernelTestBase {
/**
* {@inheritdoc}
*/
protected static $modules = [
'file',
'file_test',
'file_validator_test',
'user',
];
/**
* {@inheritdoc}
*/
protected function setUp() : void {
parent::setUp();
$filename = 'test.bbb';
vfsStream::newFile($filename)->at($this->vfsRoot)
->withContent('test');
$request = new Request();
$request->files
->set('files', [
'file' => new UploadedFile(path: vfsStream::url("root/{$filename}"), originalName: $filename, mimeType: 'text/plain', error: \UPLOAD_ERR_OK, test: TRUE),
]);
$request->setSession(new Session(new MockArraySessionStorage()));
$requestStack = new RequestStack();
$requestStack->push($request);
$this->container
->set('request_stack', $requestStack);
}
/**
* Tests file_save_upload() with empty extensions.
*/
public function testFileSaveUploadEmptyExtensions() : void {
// Allow all extensions.
$validators = [
'FileExtension' => [],
];
$files = file_save_upload('file', $validators);
$this->assertCount(1, $files);
$file = $files[0];
// @todo work out why move_uploaded_file() is failing.
$this->assertFalse($file);
$messages = \Drupal::messenger()->messagesByType(MessengerInterface::TYPE_ERROR);
$this->assertNotEmpty($messages);
$this->assertEquals('File upload error. Could not move uploaded file.', $messages[0]);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.