Skip to content
Snippets Groups Projects
Verified Commit 501e1ed2 authored by Lee Rowlands's avatar Lee Rowlands
Browse files

Issue #3402981 by kim.pepper, larowlan, quietone: Filename property is not...

Issue #3402981 by kim.pepper, larowlan, quietone: Filename property is not updated when a duplicate file is renamed In REST and JSON API file uploads
parent 89ec081a
Branches
Tags
28 merge requests!12227Issue #3181946 by jonmcl, mglaman,!8528Issue #3456871 by Tim Bozeman: Support NULL services,!3878Removed unused condition head title for views,!38582585169-10.1.x,!3818Issue #2140179: $entity->original gets stale between updates,!3742Issue #3328429: Create item list field formatter for displaying ordered and unordered lists,!3731Claro: role=button on status report items,!3668Resolve #3347842 "Deprecate the trusted",!3651Issue #3347736: Create new SDC component for Olivero (header-search),!3531Issue #3336994: StringFormatter always displays links to entity even if the user in context does not have access,!3478Issue #3337882: Deleted menus are not removed from content type config,!3355Issue #3209129: Scrolling problems when adding a block via layout builder,!3226Issue #2987537: Custom menu link entity type should not declare "bundle" entity key,!3154Fixes #2987987 - CSRF token validation broken on routes with optional parameters.,!3133core/modules/system/css/components/hidden.module.css,!2964Issue #2865710 : Dependencies from only one instance of a widget are used in display modes,!2812Issue #3312049: [Followup] Fix Drupal.Commenting.FunctionComment.MissingReturnType returns for NULL,!2378Issue #2875033: Optimize joins and table selection in SQL entity query implementation,!2334Issue #3228209: Add hasRole() method to AccountInterface,!2062Issue #3246454: Add weekly granularity to views date sort,!1105Issue #3025039: New non translatable field on translatable content throws error,!1073issue #3191727: Focus states on mobile second level navigation items fixed,!10223132456: Fix issue where views instances are emptied before an ajax request is complete,!877Issue #2708101: Default value for link text is not saved,!617Issue #3043725: Provide a Entity Handler for user cancelation,!579Issue #2230909: Simple decimals fail to pass validation,!560Move callback classRemove outside of the loop,!555Issue #3202493
Pipeline #85626 passed
Pipeline: drupal

#85627

    ......@@ -330,6 +330,12 @@ public function post(Request $request, $entity_type_id, $bundle, $field_name) {
    }
    $file->setFileUri($file_uri);
    // Update the filename with any changes as a result of security or renaming
    // due to an existing file.
    // @todo Remove this duplication by replacing with FileUploadHandler. See
    // https://www.drupal.org/project/drupal/issues/3401734
    $file->setFilename($this->fileSystem->basename($file->getFileUri()));
    // Move the file to the correct location after validation. Use
    // FileSystemInterface::EXISTS_ERROR as the file location has already been
    // determined above in FileSystem::getDestinationFilename().
    ......
    ......@@ -245,6 +245,13 @@ public function handleFileUploadForField(FieldDefinitionInterface $field_definit
    }
    $file->setFileUri($file_uri);
    // Update the filename with any changes as a result of security or renaming
    // due to an existing file.
    // @todo Remove this duplication by replacing with FileUploadHandler. See
    // https://www.drupal.org/project/drupal/issues/3401734
    $file->setFilename($this->fileSystem->basename($file->getFileUri()));
    // Move the file to the correct location after validation. Use
    // FileSystemInterface::EXISTS_ERROR as the file location has already been
    // determined above in FileSystem::getDestinationFilename().
    ......
    ......@@ -249,7 +249,7 @@ public function testPostFileUpload() {
    // header with no 'file' prefix.
    $response = $this->fileRequest($uri, $this->testFileData, ['Content-Disposition' => 'filename="example.txt"']);
    $this->assertSame(201, $response->getStatusCode());
    $expected = $this->getExpectedDocument(2, 'example_0.txt');
    $expected = $this->getExpectedDocument(2, 'example_0.txt', TRUE);
    $this->assertResponseData($expected, $response);
    // Check the actual file data.
    ......@@ -340,7 +340,7 @@ public function testPostFileUploadAndUseInSingleRequest() {
    'data' => [
    0 => $this->getExpectedDocument(1, 'existing.txt', TRUE, TRUE)['data'],
    1 => $this->getExpectedDocument(2, 'example.txt', TRUE, TRUE)['data'],
    2 => $this->getExpectedDocument(3, 'example_0.txt', FALSE, TRUE)['data'],
    2 => $this->getExpectedDocument(3, 'example_0.txt', TRUE, TRUE)['data'],
    ],
    ];
    $this->assertResponseData($expected, $response);
    ......@@ -448,7 +448,7 @@ public function testPostFileUploadDuplicateFile() {
    $this->assertSame(201, $response->getStatusCode());
    // Loading expected normalized data for file 2, the duplicate file.
    $expected = $this->getExpectedDocument(2, 'example_0.txt');
    $expected = $this->getExpectedDocument(2, 'example_0.txt', TRUE);
    $this->assertResponseData($expected, $response);
    // Check the actual file data.
    ......
    ......@@ -195,7 +195,7 @@ public function testPostFileUpload() {
    // header with no 'file' prefix.
    $response = $this->fileRequest($uri, $this->testFileData, ['Content-Disposition' => 'filename="example.txt"']);
    $this->assertSame(201, $response->getStatusCode());
    $expected = $this->getExpectedNormalizedEntity(2, 'example_0.txt');
    $expected = $this->getExpectedNormalizedEntity(2, 'example_0.txt', TRUE);
    $this->assertResponseData($expected, $response);
    // Check the actual file data.
    ......@@ -317,7 +317,7 @@ public function testPostFileUploadDuplicateFile() {
    $this->assertSame(201, $response->getStatusCode());
    // Loading expected normalized data for file 2, the duplicate file.
    $expected = $this->getExpectedNormalizedEntity(2, 'example_0.txt');
    $expected = $this->getExpectedNormalizedEntity(2, 'example_0.txt', TRUE);
    $this->assertResponseData($expected, $response);
    // Check the actual file data.
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Please register or to comment