summaryrefslogtreecommitdiffstats
path: root/apps/theming/tests
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2017-05-14 23:52:14 +0200
committerJulius Härtl <jus@bitgrid.net>2017-05-17 10:14:37 +0200
commitd3865b60964bb4161c2ac47b91efbd0f9d7aa358 (patch)
treeb7e1fe4cf2bb07336cda345923ad489ba4b72b62 /apps/theming/tests
parent443cbdc73931c0deec5bc01634ec9b512486d769 (diff)
downloadnextcloud-server-d3865b60964bb4161c2ac47b91efbd0f9d7aa358.tar.gz
nextcloud-server-d3865b60964bb4161c2ac47b91efbd0f9d7aa358.zip
Use appdata logo when generating icons
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'apps/theming/tests')
-rw-r--r--apps/theming/tests/IconBuilderTest.php14
-rw-r--r--apps/theming/tests/UtilTest.php37
2 files changed, 35 insertions, 16 deletions
diff --git a/apps/theming/tests/IconBuilderTest.php b/apps/theming/tests/IconBuilderTest.php
index 423e3e86dbc..9b5b1933201 100644
--- a/apps/theming/tests/IconBuilderTest.php
+++ b/apps/theming/tests/IconBuilderTest.php
@@ -27,7 +27,9 @@ use OCA\Theming\ThemingDefaults;
use OCA\Theming\Util;
use OCP\App\IAppManager;
use OCP\AppFramework\Http\NotFoundResponse;
+use OCP\Files\IAppData;
use OCP\Files\IRootFolder;
+use OCP\Files\NotFoundException;
use OCP\IConfig;
use Test\TestCase;
@@ -35,8 +37,8 @@ class IconBuilderTest extends TestCase {
/** @var IConfig */
protected $config;
- /** @var IRootFolder */
- protected $rootFolder;
+ /** @var IAppData */
+ protected $appData;
/** @var ThemingDefaults */
protected $themingDefaults;
/** @var Util */
@@ -50,11 +52,11 @@ class IconBuilderTest extends TestCase {
parent::setUp();
$this->config = $this->getMockBuilder('\OCP\IConfig')->getMock();
- $this->rootFolder = $this->getMockBuilder('OCP\Files\IRootFolder')->getMock();
+ $this->appData = $this->createMock(IAppData::class);
$this->themingDefaults = $this->getMockBuilder('OCA\Theming\ThemingDefaults')
->disableOriginalConstructor()->getMock();
$this->appManager = $this->getMockBuilder('OCP\App\IAppManager')->getMock();
- $this->util = new Util($this->config, $this->rootFolder, $this->appManager);
+ $this->util = new Util($this->config, $this->appManager, $this->appData);
$this->iconBuilder = new IconBuilder($this->themingDefaults, $this->util);
}
@@ -89,6 +91,10 @@ class IconBuilderTest extends TestCase {
$this->themingDefaults->expects($this->once())
->method('getColorPrimary')
->willReturn($color);
+ $this->appData->expects($this->once())
+ ->method('getFolder')
+ ->with('images')
+ ->willThrowException(new NotFoundException());
$expectedIcon = new \Imagick(realpath(dirname(__FILE__)). "/data/" . $file);
$icon = $this->iconBuilder->renderAppIcon($app, 512);
diff --git a/apps/theming/tests/UtilTest.php b/apps/theming/tests/UtilTest.php
index 83895208fea..de6690ffe0d 100644
--- a/apps/theming/tests/UtilTest.php
+++ b/apps/theming/tests/UtilTest.php
@@ -24,6 +24,10 @@ namespace OCA\Theming\Tests;
use OCA\Theming\Util;
use OCP\App\IAppManager;
+use OCP\Files\IAppData;
+use OCP\Files\NotFoundException;
+use OCP\Files\SimpleFS\ISimpleFile;
+use OCP\Files\SimpleFS\ISimpleFolder;
use OCP\IConfig;
use OCP\Files\IRootFolder;
use Test\TestCase;
@@ -34,17 +38,17 @@ class UtilTest extends TestCase {
protected $util;
/** @var IConfig */
protected $config;
- /** @var IRootFolder */
- protected $rootFolder;
+ /** @var IAppData */
+ protected $appData;
/** @var IAppManager */
protected $appManager;
protected function setUp() {
parent::setUp();
- $this->config = $this->getMockBuilder('\OCP\IConfig')->getMock();
- $this->rootFolder = $this->getMockBuilder('OCP\Files\IRootFolder')->getMock();
- $this->appManager = $this->getMockBuilder('OCP\App\IAppManager')->getMock();
- $this->util = new Util($this->config, $this->rootFolder, $this->appManager);
+ $this->config = $this->createMock(IConfig::class);
+ $this->appData = $this->createMock(IAppData::class);
+ $this->appManager = $this->createMock(IAppManager::class);
+ $this->util = new Util($this->config, $this->appManager, $this->appData);
}
public function testInvertTextColorLight() {
@@ -112,6 +116,10 @@ class UtilTest extends TestCase {
* @dataProvider dataGetAppIcon
*/
public function testGetAppIcon($app, $expected) {
+ $this->appData->expects($this->any())
+ ->method('getFolder')
+ ->with('images')
+ ->willThrowException(new NotFoundException());
$this->appManager->expects($this->once())
->method('getAppPath')
->with($app)
@@ -129,13 +137,18 @@ class UtilTest extends TestCase {
}
public function testGetAppIconThemed() {
- $this->rootFolder->expects($this->once())
- ->method('nodeExists')
- ->with('/themedinstancelogo')
- ->willReturn(true);
- $expected = '/themedinstancelogo';
+ $file = $this->createMock(ISimpleFile::class);
+ $folder = $this->createMock(ISimpleFolder::class);
+ $folder->expects($this->once())
+ ->method('getFile')
+ ->with('logo')
+ ->willReturn($file);
+ $this->appData->expects($this->once())
+ ->method('getFolder')
+ ->with('images')
+ ->willReturn($folder);
$icon = $this->util->getAppIcon('noapplikethis');
- $this->assertEquals($expected, $icon);
+ $this->assertEquals($file, $icon);
}
/**