New config param: overwrite_on_upload

This commit is contained in:
Milos Stojanovic
2020-03-23 13:37:54 +01:00
parent 0765958729
commit 8330fa86bc
7 changed files with 43 additions and 6 deletions

View File

@@ -10,10 +10,10 @@
namespace Tests\Unit;
use Exception;
use Filegator\Services\Storage\Filesystem;
use League\Flysystem\Adapter\Local;
use Tests\TestCase;
use Exception;
/**
* @internal
@@ -265,6 +265,33 @@ class FilesystemTest extends TestCase
$this->assertEquals('croissant', stream_get_contents($ret['stream']));
}
public function testStoringFileWithTheSameNameOverwritesOriginalFile()
{
// create dummy file
$string = 'lorem ipsum';
$resource = fopen('data://text/plain;base64,'.base64_encode($string), 'r');
// and store it
$this->storage->store('/', 'singletone.txt', $resource);
fclose($resource);
// first file contains lorem ipsum
$ret = $this->storage->readStream('singletone.txt');
$this->assertEquals('lorem ipsum', stream_get_contents($ret['stream']));
// create another dummy file
$string = 'croissant';
$resource = fopen('data://text/plain;base64,'.base64_encode($string), 'r');
// and store it with the same name
$this->storage->store('/', 'singletone.txt', $resource, true);
fclose($resource);
// first file is overwritten
$ret = $this->storage->readStream('singletone.txt');
$this->assertEquals('croissant', stream_get_contents($ret['stream']));
}
public function testCreatingFileWithTheSameNameUpcountsFilenameRecursively()
{
$this->storage->createFile('/', 'test.txt');