Replace null return with NotFoundException
Signed-off-by: Julius Haertl <jus@bitgrid.net>
This commit is contained in:
parent
cc8b1d3829
commit
3a400f92d1
4 changed files with 27 additions and 21 deletions
|
@ -30,6 +30,7 @@ use OCP\AppFramework\Http;
|
|||
use OCP\AppFramework\Http\DataDisplayResponse;
|
||||
use OCP\AppFramework\Http\FileDisplayResponse;
|
||||
use OCP\AppFramework\Utility\ITimeFactory;
|
||||
use OCP\Files\NotFoundException;
|
||||
use OCP\IRequest;
|
||||
use OCA\Theming\Util;
|
||||
use OCP\IConfig;
|
||||
|
@ -89,8 +90,9 @@ class IconController extends Controller {
|
|||
* @return FileDisplayResponse
|
||||
*/
|
||||
public function getThemedIcon($app, $image) {
|
||||
$iconFile = $this->imageManager->getCachedImage("icon-" . $app . '-' . str_replace("/","_",$image));
|
||||
if ($iconFile === null) {
|
||||
try {
|
||||
$iconFile = $this->imageManager->getCachedImage("icon-" . $app . '-' . str_replace("/","_",$image));
|
||||
} catch (NotFoundException $exception) {
|
||||
$icon = $this->iconBuilder->colorSvg($app, $image);
|
||||
$iconFile = $this->imageManager->setCachedImage("icon-" . $app . '-' . str_replace("/","_",$image), $icon);
|
||||
}
|
||||
|
@ -115,8 +117,9 @@ class IconController extends Controller {
|
|||
*/
|
||||
public function getFavicon($app = "core") {
|
||||
if ($this->themingDefaults->shouldReplaceIcons()) {
|
||||
$iconFile = $this->imageManager->getCachedImage('favIcon-' . $app);
|
||||
if($iconFile === null) {
|
||||
try {
|
||||
$iconFile = $this->imageManager->getCachedImage('favIcon-' . $app);
|
||||
} catch (NotFoundException $exception) {
|
||||
$icon = $this->iconBuilder->getFavicon($app);
|
||||
$iconFile = $this->imageManager->setCachedImage('favIcon-' . $app, $icon);
|
||||
}
|
||||
|
@ -146,8 +149,9 @@ class IconController extends Controller {
|
|||
*/
|
||||
public function getTouchIcon($app = "core") {
|
||||
if ($this->themingDefaults->shouldReplaceIcons()) {
|
||||
$iconFile = $this->imageManager->getCachedImage('touchIcon-' . $app);
|
||||
if ($iconFile === null) {
|
||||
try {
|
||||
$iconFile = $this->imageManager->getCachedImage('touchIcon-' . $app);
|
||||
} catch (NotFoundException $exception) {
|
||||
$icon = $this->iconBuilder->getTouchIcon($app);
|
||||
$iconFile = $this->imageManager->setCachedImage('touchIcon-' . $app, $icon);
|
||||
}
|
||||
|
|
|
@ -71,15 +71,12 @@ class ImageManager {
|
|||
* Get a file from AppData
|
||||
*
|
||||
* @param string $filename
|
||||
* @return null|\OCP\Files\SimpleFS\ISimpleFile
|
||||
* @throws NotFoundException
|
||||
* @return \OCP\Files\SimpleFS\ISimpleFile
|
||||
*/
|
||||
public function getCachedImage($filename) {
|
||||
$currentFolder = $this->getCacheFolder();
|
||||
if($currentFolder->fileExists($filename)) {
|
||||
return $currentFolder->getFile($filename);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return $currentFolder->getFile($filename);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -28,6 +28,7 @@ use OCA\Theming\ImageManager;
|
|||
use OCP\AppFramework\Http;
|
||||
use OCP\AppFramework\Http\DataDisplayResponse;
|
||||
use OCP\Files\IRootFolder;
|
||||
use OCP\Files\NotFoundException;
|
||||
use OCP\IConfig;
|
||||
use OCP\IL10N;
|
||||
use OCP\IRequest;
|
||||
|
@ -130,6 +131,9 @@ class IconControllerTest extends TestCase {
|
|||
->with('core')
|
||||
->willReturn('filecontent');
|
||||
$file = $this->iconFileMock('filename', 'filecontent');
|
||||
$this->imageManager->expects($this->once())
|
||||
->method('getCachedImage')
|
||||
->will($this->throwException(new NotFoundException()));
|
||||
$this->imageManager->expects($this->once())
|
||||
->method('setCachedImage')
|
||||
->willReturn($file);
|
||||
|
@ -171,6 +175,9 @@ class IconControllerTest extends TestCase {
|
|||
->with('core')
|
||||
->willReturn('filecontent');
|
||||
$file = $this->iconFileMock('filename', 'filecontent');
|
||||
$this->imageManager->expects($this->once())
|
||||
->method('getCachedImage')
|
||||
->will($this->throwException(new NotFoundException()));
|
||||
$this->imageManager->expects($this->once())
|
||||
->method('setCachedImage')
|
||||
->willReturn($file);
|
||||
|
|
|
@ -85,10 +85,6 @@ class ImageManager extends TestCase {
|
|||
|
||||
public function testGetCachedImage() {
|
||||
$folder = $this->setupCacheFolder();
|
||||
$folder->expects($this->once())
|
||||
->method('fileExists')
|
||||
->with('filename')
|
||||
->willReturn(true);
|
||||
$folder->expects($this->once())
|
||||
->method('getFile')
|
||||
->with('filename')
|
||||
|
@ -97,14 +93,16 @@ class ImageManager extends TestCase {
|
|||
$this->assertEquals($expected, $this->imageManager->getCachedImage('filename'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \OCP\Files\NotFoundException
|
||||
*/
|
||||
public function testGetCachedImageNotFound() {
|
||||
$folder = $this->setupCacheFolder();
|
||||
$folder->expects($this->once())
|
||||
->method('fileExists')
|
||||
->method('getFile')
|
||||
->with('filename')
|
||||
->willReturn(false);
|
||||
$expected = null;
|
||||
$this->assertEquals($expected, $this->imageManager->getCachedImage('filename'));
|
||||
->will($this->throwException(new \OCP\Files\NotFoundException()));
|
||||
$image = $this->imageManager->getCachedImage('filename');
|
||||
}
|
||||
|
||||
public function testSetCachedImage() {
|
||||
|
|
Loading…
Reference in a new issue