diff --git a/typo3/sysext/impexp/Classes/ImportExport.php b/typo3/sysext/impexp/Classes/ImportExport.php index 399cb939def0caaa29513160432c4b105fc5cad0..01496577502b34612d06ee052e19c49459341802 100644 --- a/typo3/sysext/impexp/Classes/ImportExport.php +++ b/typo3/sysext/impexp/Classes/ImportExport.php @@ -1229,6 +1229,7 @@ abstract class ImportExport { if (!empty($this->defaultImportExportFolder)) { $this->defaultImportExportFolder->delete(true); + $this->defaultImportExportFolder = null; } } diff --git a/typo3/sysext/impexp/Tests/Functional/ExportTest.php b/typo3/sysext/impexp/Tests/Functional/ExportTest.php index 16a5a1231d3a7fa5dc06167147b325d4ff0933d5..63e75065cf214e566268fc474c694d52d05cd9fb 100644 --- a/typo3/sysext/impexp/Tests/Functional/ExportTest.php +++ b/typo3/sysext/impexp/Tests/Functional/ExportTest.php @@ -26,7 +26,7 @@ class ExportTest extends AbstractImportExportTestCase /** * @var array */ - protected $pathsToLinkInTestInstance = [ + protected $pathsToProvideInTestInstance = [ 'typo3/sysext/impexp/Tests/Functional/Fixtures/Folders/fileadmin/user_upload' => 'fileadmin/user_upload' ]; @@ -308,10 +308,11 @@ class ExportTest extends AbstractImportExportTestCase { $this->exportMock->setExportFileName('export'); $this->exportMock->process(); - $file = $this->exportMock->saveToFile(); $filePath = Environment::getPublicPath() . '/' . $file->getPublicUrl(); + $this->testFilesToDelete[] = $filePath; + self::assertStringEndsWith('export.xml', $filePath); self::assertXmlFileEqualsXmlFile(__DIR__ . '/Fixtures/XmlExports/empty.xml', $filePath); } @@ -324,10 +325,11 @@ class ExportTest extends AbstractImportExportTestCase $this->exportMock->setExportFileName('export'); $this->exportMock->setExportFileType(Export::FILETYPE_T3D); $this->exportMock->process(); - $file = $this->exportMock->saveToFile(); $filePath = Environment::getPublicPath() . '/' . $file->getPublicUrl(); + $this->testFilesToDelete[] = $filePath; + // remove final newlines $expected = trim(file_get_contents(__DIR__ . '/Fixtures/T3dExports/empty.t3d')); $actual = trim(file_get_contents($filePath)); @@ -348,10 +350,11 @@ class ExportTest extends AbstractImportExportTestCase $this->exportMock->setExportFileName('export'); $this->exportMock->setExportFileType(Export::FILETYPE_T3DZ); $this->exportMock->process(); - $file = $this->exportMock->saveToFile(); $filePath = Environment::getPublicPath() . '/' . $file->getPublicUrl(); + $this->testFilesToDelete[] = $filePath; + // remove final newlines $expected = trim(file_get_contents(__DIR__ . '/Fixtures/T3dExports/empty-z.t3d')); $actual = trim(file_get_contents($filePath)); @@ -381,7 +384,9 @@ class ExportTest extends AbstractImportExportTestCase $this->exportMock->setSaveFilesOutsideExportFile(true); $this->exportMock->setExportFileName('export'); $this->exportMock->process(); - $this->exportMock->saveToFile(); + $file = $this->exportMock->saveToFile(); + + $this->testFilesToDelete[] = Environment::getPublicPath() . '/' . $file->getPublicUrl(); self::assertCount($numTemporaryFilesAndFoldersBeforeImport, new \FilesystemIterator($fileDirectory, \FilesystemIterator::SKIP_DOTS)); self::assertEmpty($this->exportMock->_get('temporaryFolderName')); @@ -414,7 +419,9 @@ class ExportTest extends AbstractImportExportTestCase $this->exportMock->setSaveFilesOutsideExportFile(false); $this->exportMock->process(); - $this->exportMock->saveToFile(); + $file = $this->exportMock->saveToFile(); + + $this->testFilesToDelete[] = Environment::getPublicPath() . '/' . $file->getPublicUrl(); self::assertFalse($importExportFolder->hasFolder($filesFolderName)); }