aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Repair/RepairMimeTypesTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Repair/RepairMimeTypesTest.php')
-rw-r--r--tests/lib/Repair/RepairMimeTypesTest.php56
1 files changed, 34 insertions, 22 deletions
diff --git a/tests/lib/Repair/RepairMimeTypesTest.php b/tests/lib/Repair/RepairMimeTypesTest.php
index b7076b32e77..0261b56ebe9 100644
--- a/tests/lib/Repair/RepairMimeTypesTest.php
+++ b/tests/lib/Repair/RepairMimeTypesTest.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
@@ -8,10 +9,13 @@
namespace Test\Repair;
use OC\Files\Storage\Temporary;
+use OC\Repair\RepairMimeTypes;
use OCP\Files\IMimeTypeLoader;
+use OCP\IAppConfig;
use OCP\IConfig;
+use OCP\IDBConnection;
use OCP\Migration\IOutput;
-use OCP\Migration\IRepairStep;
+use OCP\Server;
/**
* Tests for the converting of legacy storages to home storages.
@@ -21,41 +25,49 @@ use OCP\Migration\IRepairStep;
* @see \OC\Repair\RepairMimeTypes
*/
class RepairMimeTypesTest extends \Test\TestCase {
- /** @var IRepairStep */
- private $repair;
-
- /** @var Temporary */
- private $storage;
- /** @var IMimeTypeLoader */
- private $mimetypeLoader;
+ private RepairMimeTypes $repair;
+ private Temporary $storage;
+ private IMimeTypeLoader $mimetypeLoader;
+ private IDBConnection $db;
protected function setUp(): void {
parent::setUp();
- $this->mimetypeLoader = \OC::$server->getMimeTypeLoader();
+ $this->mimetypeLoader = Server::get(IMimeTypeLoader::class);
+ $this->db = Server::get(IDBConnection::class);
- /** @var IConfig | \PHPUnit\Framework\MockObject\MockObject $config */
$config = $this->getMockBuilder(IConfig::class)
->disableOriginalConstructor()
->getMock();
- $config->expects($this->any())
- ->method('getSystemValueString')
+ $config->method('getSystemValueString')
->with('version')
->willReturn('11.0.0.0');
- $this->storage = new \OC\Files\Storage\Temporary([]);
+ $appConfig = $this->getMockBuilder(IAppConfig::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $appConfig->method('getValueString')
+ ->with('files', 'mimetype_version')
+ ->willReturn('11.0.0.0');
+
+ $this->storage = new Temporary([]);
+ $this->storage->getScanner()->scan('');
- $this->repair = new \OC\Repair\RepairMimeTypes($config, \OC::$server->getDatabaseConnection());
+ $this->repair = new RepairMimeTypes(
+ $config,
+ $appConfig,
+ Server::get(IDBConnection::class),
+ );
}
protected function tearDown(): void {
$this->storage->getCache()->clear();
- $qb = \OC::$server->getDatabaseConnection()->getQueryBuilder();
+ $qb = $this->db->getQueryBuilder();
$qb->delete('storages')
->where($qb->expr()->eq('id', $qb->createNamedParameter($this->storage->getId())));
- $qb->execute();
+ $qb->executeStatement();
$this->clearMimeTypes();
@@ -63,9 +75,9 @@ class RepairMimeTypesTest extends \Test\TestCase {
}
private function clearMimeTypes() {
- $qb = \OC::$server->getDatabaseConnection()->getQueryBuilder();
+ $qb = $this->db->getQueryBuilder();
$qb->delete('mimetypes');
- $qb->execute();
+ $qb->executeStatement();
$this->mimetypeLoader->reset();
}
@@ -111,7 +123,7 @@ class RepairMimeTypesTest extends \Test\TestCase {
/**
* Test renaming the additional image mime types
*/
- public function testRenameImageTypes() {
+ public function testRenameImageTypes(): void {
$currentMimeTypes = [
['test.jp2', 'application/octet-stream'],
['test.webp', 'application/octet-stream'],
@@ -128,7 +140,7 @@ class RepairMimeTypesTest extends \Test\TestCase {
/**
* Test renaming the richdocuments additional office mime types
*/
- public function testRenameWindowsProgramTypes() {
+ public function testRenameWindowsProgramTypes(): void {
$currentMimeTypes = [
['test.htaccess', 'application/octet-stream'],
['.htaccess', 'application/octet-stream'],
@@ -150,7 +162,7 @@ class RepairMimeTypesTest extends \Test\TestCase {
* Test that nothing happens and no error happens when all mimetypes are
* already correct and no old ones exist..
*/
- public function testDoNothingWhenOnlyNewFiles() {
+ public function testDoNothingWhenOnlyNewFiles(): void {
$currentMimeTypes = [
['test.doc', 'application/msword'],
['test.docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],
@@ -265,7 +277,7 @@ class RepairMimeTypesTest extends \Test\TestCase {
/**
* Test that mime type renaming does not affect folders
*/
- public function testDoNotChangeFolderMimeType() {
+ public function testDoNotChangeFolderMimeType(): void {
$currentMimeTypes = [
['test.conf', 'httpd/unix-directory'],
['test.cnf', 'httpd/unix-directory'],