|
|
@@ -20,9 +20,6 @@ class TestableFileStorage extends FileStorage {
|
|
|
public function getPrefix(mixed $owner, bool $isTemporary, string $type = null): string {
|
|
|
return parent::getPrefix($owner, $isTemporary, $type);
|
|
|
}
|
|
|
- public function guessMimeTypeFromFilename(string $filename): string | null {
|
|
|
- return parent::guessMimeTypeFromFilename($filename);
|
|
|
- }
|
|
|
#[Pure] public function getOrganizationAndPersonFromOwner(mixed $owner): array {
|
|
|
return parent::getOrganizationAndPersonFromOwner($owner);
|
|
|
}
|
|
|
@@ -124,7 +121,6 @@ class FileStorageTest extends TestCase
|
|
|
$author->method('getId')->willReturn(123);
|
|
|
|
|
|
$fileStorage->method('getOrganizationAndPersonFromOwner')->with($owner)->willReturn([$owner, null]);
|
|
|
- $fileStorage->method('guessMimeTypeFromFilename')->with('file.txt')->willReturn('text/plain');
|
|
|
|
|
|
$this->entityManager->expects(self::once())->method('persist');
|
|
|
$this->entityManager->expects(self::once())->method('flush');
|
|
|
@@ -162,7 +158,6 @@ class FileStorageTest extends TestCase
|
|
|
$author = $this->getMockBuilder(Access::class)->getMock();
|
|
|
|
|
|
$fileStorage->method('getOrganizationAndPersonFromOwner')->with($owner)->willReturn([null, $owner]);
|
|
|
- $fileStorage->method('guessMimeTypeFromFilename')->with('file.txt')->willReturn('text/plain');
|
|
|
|
|
|
$this->entityManager->expects(self::once())->method('persist');
|
|
|
$this->entityManager->expects(self::once())->method('flush');
|
|
|
@@ -189,7 +184,6 @@ class FileStorageTest extends TestCase
|
|
|
$author = $this->getMockBuilder(Access::class)->getMock();
|
|
|
|
|
|
$fileStorage->method('getOrganizationAndPersonFromOwner')->with($owner)->willReturn([$owner, null]);
|
|
|
- $fileStorage->method('guessMimeTypeFromFilename')->with('file.txt')->willReturn('text/plain');
|
|
|
|
|
|
$this->entityManager->expects(self::once())->method('persist');
|
|
|
$this->entityManager->expects(self::never())->method('flush');
|
|
|
@@ -555,14 +549,31 @@ class FileStorageTest extends TestCase
|
|
|
->setMethodsExcept(['guessMimeTypeFromFilename'])
|
|
|
->getMock();
|
|
|
|
|
|
- $this->assertEquals('application/pdf', $fileStorage->guessMimeTypeFromFilename('file.pdf'));
|
|
|
- $this->assertEquals('text/csv', $fileStorage->guessMimeTypeFromFilename('file.csv'));
|
|
|
- $this->assertEquals('text/plain', $fileStorage->guessMimeTypeFromFilename('file.txt'));
|
|
|
- $this->assertEquals('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', $fileStorage->guessMimeTypeFromFilename('file.xlsx'));
|
|
|
- $this->assertEquals('application/xml', $fileStorage->guessMimeTypeFromFilename('file.xml'));
|
|
|
+ $this->assertEquals('application/pdf', $fileStorage::guessMimeTypeFromFilename('file.pdf'));
|
|
|
+ $this->assertEquals('text/csv', $fileStorage::guessMimeTypeFromFilename('file.csv'));
|
|
|
+ $this->assertEquals('text/plain', $fileStorage::guessMimeTypeFromFilename('file.txt'));
|
|
|
+ $this->assertEquals('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', $fileStorage::guessMimeTypeFromFilename('file.xlsx'));
|
|
|
+ $this->assertEquals('application/xml', $fileStorage::guessMimeTypeFromFilename('file.xml'));
|
|
|
+
|
|
|
+ $this->assertEquals(null, $fileStorage::guessMimeTypeFromFilename('file'));
|
|
|
+ $this->assertEquals(null, $fileStorage::guessMimeTypeFromFilename('file.invalid'));
|
|
|
+ }
|
|
|
+
|
|
|
+ public function testGuessMimeTypeFromExt(): void {
|
|
|
+ $fileStorage = $this->getMockBuilder(TestableFileStorage::class)
|
|
|
+ ->setConstructorArgs([$this->filesystemMap, $this->entityManager, $this->accessRepository])
|
|
|
+ ->setMethodsExcept(['guessMimeTypeFromExt'])
|
|
|
+ ->getMock();
|
|
|
+
|
|
|
+ $this->assertEquals('application/pdf', $fileStorage::getMimeTypeFromExt('pdf'));
|
|
|
+ $this->assertEquals('text/csv', $fileStorage::getMimeTypeFromExt('csv'));
|
|
|
+ $this->assertEquals('text/plain', $fileStorage::getMimeTypeFromExt('txt'));
|
|
|
+ $this->assertEquals('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', $fileStorage::getMimeTypeFromExt('xlsx'));
|
|
|
+ $this->assertEquals('application/xml', $fileStorage::getMimeTypeFromExt('xml'));
|
|
|
|
|
|
- $this->assertEquals(null, $fileStorage->guessMimeTypeFromFilename('file'));
|
|
|
- $this->assertEquals(null, $fileStorage->guessMimeTypeFromFilename('file.invalid'));
|
|
|
+ $this->assertEquals('text/plain', $fileStorage::getMimeTypeFromExt('.txt'));
|
|
|
+ $this->assertEquals(null, $fileStorage::getMimeTypeFromExt(''));
|
|
|
+ $this->assertEquals(null, $fileStorage::getMimeTypeFromExt('invalid'));
|
|
|
}
|
|
|
|
|
|
public function testGetOrganizationAndPersonFromOwner(): void {
|