diff options
author | Morris Jobke <hey@morrisjobke.de> | 2017-12-08 23:58:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-08 23:58:17 +0100 |
commit | ed7beb929e21e8663f16b4cb8ffaf12aecb6313a (patch) | |
tree | c58f5556445c09a72dfbf72181833380fb378d2a /tests/lib | |
parent | 79ed0d105dc3e5b8fde5e4d8a1ae0f183834349e (diff) | |
parent | 66f523e13ff98aef8cdca9f449df7353dcf60da7 (diff) | |
download | nextcloud-server-ed7beb929e21e8663f16b4cb8ffaf12aecb6313a.tar.gz nextcloud-server-ed7beb929e21e8663f16b4cb8ffaf12aecb6313a.zip |
Merge pull request #6876 from nextcloud/always_img_avatar
Always generate avatar
Diffstat (limited to 'tests/lib')
-rw-r--r-- | tests/lib/AvatarTest.php | 44 |
1 files changed, 37 insertions, 7 deletions
diff --git a/tests/lib/AvatarTest.php b/tests/lib/AvatarTest.php index cea3f9bed1a..240aecc115e 100644 --- a/tests/lib/AvatarTest.php +++ b/tests/lib/AvatarTest.php @@ -12,6 +12,8 @@ use OC\Files\SimpleFS\SimpleFolder; use OC\User\User; use OCP\Files\File; use OCP\Files\Folder; +use OCP\Files\NotFoundException; +use OCP\Files\SimpleFS\ISimpleFile; use OCP\IConfig; use OCP\IL10N; use OCP\ILogger; @@ -49,7 +51,35 @@ class AvatarTest extends \Test\TestCase { } public function testGetNoAvatar() { - $this->assertEquals(false, $this->avatar->get()); + $file = $this->createMock(ISimpleFile::class); + $this->folder->method('newFile') + ->willReturn($file); + + $this->folder->method('getFile') + ->will($this->returnCallback(function($path) { + if ($path === 'avatar.64.png') { + throw new NotFoundException(); + } + })); + $this->folder->method('fileExists') + ->will($this->returnCallback(function($path) { + if ($path === 'generated') { + return true; + } + return false; + })); + + $data = NULL; + $file->method('putContent') + ->with($this->callback(function ($d) use (&$data) { + $data = $d; + return true; + })); + + $file->method('getContent') + ->willReturn($data); + + $this->assertEquals($data, $this->avatar->get()->data()); } public function testGetAvatarSizeMatch() { @@ -161,13 +191,13 @@ class AvatarTest extends \Test\TestCase { ->willReturn('avatar.32.jpg'); $resizedAvatarFile->expects($this->once())->method('delete'); - $nonAvatarFile = $this->createMock(File::class); - $nonAvatarFile->method('getName') - ->willReturn('avatarX'); - $nonAvatarFile->expects($this->never())->method('delete'); - $this->folder->method('getDirectoryListing') - ->willReturn([$avatarFileJPG, $avatarFilePNG, $resizedAvatarFile, $nonAvatarFile]); + ->willReturn([$avatarFileJPG, $avatarFilePNG, $resizedAvatarFile]); + + $generated = $this->createMock(File::class); + $this->folder->method('getFile') + ->with('generated') + ->willReturn($generated); $newFile = $this->createMock(File::class); $this->folder->expects($this->once()) |