diff --git a/apps/theming/appinfo/info.xml b/apps/theming/appinfo/info.xml index 11a8d2f73f..d2eacea77b 100644 --- a/apps/theming/appinfo/info.xml +++ b/apps/theming/appinfo/info.xml @@ -23,10 +23,4 @@ OCA\Theming\Settings\Admin OCA\Theming\Settings\Section - - - - OCA\Theming\Migration\ThemingImages - - diff --git a/apps/theming/lib/Migration/ThemingImages.php b/apps/theming/lib/Migration/ThemingImages.php deleted file mode 100644 index 4f929746cb..0000000000 --- a/apps/theming/lib/Migration/ThemingImages.php +++ /dev/null @@ -1,77 +0,0 @@ - - * - * @author Julius Haertl - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - - -namespace OCA\Theming\Migration; - -use OCA\Theming\ThemingDefaults; -use OCP\Files\IAppData; -use OCP\Files\IRootFolder; -use OCP\Migration\IRepairStep; -use OCP\Migration\IOutput; -use OC\Files\Node\File; -use OCP\Files\NotFoundException; - -class ThemingImages implements IRepairStep { - - private $appData; - private $rootFolder; - - public function __construct(IAppData $appData, IRootFolder $rootFolder) { - $this->appData = $appData; - $this->rootFolder = $rootFolder; - } - - /* - * @inheritdoc - */ - public function getName() { - return 'Move theming files to AppData storage'; - } - - /** - * @inheritdoc - */ - public function run(IOutput $output) { - $folder = $this->appData->newFolder("images"); - /** @var File $file */ - $file = null; - try { - $file = $this->rootFolder->get('themedinstancelogo'); - $logo = $folder->newFile('logo'); - $logo->putContent($file->getContent()); - $file->delete(); - } catch (NotFoundException $e) { - $output->info('No theming logo image to migrate'); - } - - try { - $file = $this->rootFolder->get('themedbackgroundlogo'); - $background = $folder->newFile('background'); - $background->putContent($file->getContent()); - $file->delete(); - } catch (NotFoundException $e) { - $output->info('No theming background image to migrate'); - } - } -} diff --git a/apps/theming/tests/Migration/ThemingImages.php b/apps/theming/tests/Migration/ThemingImages.php deleted file mode 100644 index a8d066c26f..0000000000 --- a/apps/theming/tests/Migration/ThemingImages.php +++ /dev/null @@ -1,139 +0,0 @@ - - * - * @author Julius Haertl - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * - */ - -namespace OCA\Theming\Tests\Migration; - -use OCP\Files\File; -use OCP\Files\NotFoundException; -use OCP\Files\SimpleFS\ISimpleFile; -use OCP\Files\SimpleFS\ISimpleFolder; -use OCP\Migration\IOutput; -use Test\TestCase; -use OCA\Theming\Migration\ThemingImages; -use OCP\Files\IAppData; -use OCP\Files\IRootFolder; - -class ThemingImagesTest extends TestCase { - /** @var ThemingImages */ - private $repairStep; - /** @var IAppData */ - private $appData; - /** @var IRootFolder */ - private $rootFolder; - /** @var ISimpleFolder */ - private $imageFolder; - /** @var IOutput */ - private $output; - - public function setUp() { - parent::setUp(); - $this->appData = $this->createMock(IAppData::class); - $this->rootFolder = $this->createMock(IRootFolder::class); - $this->repairStep = new ThemingImages($this->appData, $this->rootFolder); - $this->imageFolder = $this->createMock(ISimpleFolder::class); - $this->output = $this->createMock(IOutput::class); - } - - public function testGetName() { - $this->assertEquals( - 'Move theming files to AppData storage', - $this->repairStep->getName() - ); - } - - public function testRunNoImages() { - $this->appData->expects($this->once()) - ->method('newFolder') - ->willReturn($this->imageFolder); - $this->rootFolder->expects($this->any()) - ->method('get') - ->willThrowException(new NotFoundException()); - $this->imageFolder->expects($this->never()) - ->method('newFile'); - $this->output->expects($this->exactly(2)) - ->method('info'); - $this->repairStep->run($this->output); - } - - public function testRunLogo() { - $oldFile = $this->createMock(File::class); - $newFile = $this->createMock(ISimpleFile::class); - - $this->appData->expects($this->once()) - ->method('newFolder') - ->willReturn($this->imageFolder); - $this->rootFolder->expects($this->at(1)) - ->method('get') - ->with('themedbackgroundlogo') - ->willThrowException(new NotFoundException()); - $this->rootFolder->expects($this->at(0)) - ->method('get') - ->with('themedinstancelogo') - ->willReturn($oldFile); - $this->imageFolder->expects($this->once()) - ->method('newFile') - ->with('logo') - ->willReturn($newFile); - $oldFile->expects($this->once()) - ->method('getContent') - ->willReturn('data'); - $newFile->expects($this->once()) - ->method('putContent') - ->with('data'); - $oldFile->expects($this->once()) - ->method('delete'); - - $this->repairStep->run($this->output); - } - - public function testRunBackground() { - $oldFile = $this->createMock(File::class); - $newFile = $this->createMock(ISimpleFile::class); - - $this->appData->expects($this->once()) - ->method('newFolder') - ->willReturn($this->imageFolder); - $this->rootFolder->expects($this->at(1)) - ->method('get') - ->with('themedbackgroundlogo') - ->willReturn($oldFile); - $this->rootFolder->expects($this->at(0)) - ->method('get') - ->with('themedinstancelogo') - ->willThrowException(new NotFoundException()); - $this->imageFolder->expects($this->once()) - ->method('newFile') - ->with('background') - ->willReturn($newFile); - $oldFile->expects($this->once()) - ->method('getContent') - ->willReturn('data'); - $newFile->expects($this->once()) - ->method('putContent') - ->with('data'); - $oldFile->expects($this->once()) - ->method('delete'); - - $this->repairStep->run($this->output); - } -}