diff options
author | Robin Appelman <robin@icewind.nl> | 2020-04-09 15:59:18 +0200 |
---|---|---|
committer | Robin Appelman <robin@icewind.nl> | 2020-04-10 13:39:45 +0200 |
commit | 8f9bac26f874e105c017de2b1791b23c2a135b28 (patch) | |
tree | 4b00af523cfb211e021792f2dc60181ad38600b5 /tests | |
parent | 7d386872e5f4c5530a936465f71b4e1ea85a565e (diff) | |
download | nextcloud-server-8f9bac26f874e105c017de2b1791b23c2a135b28.tar.gz nextcloud-server-8f9bac26f874e105c017de2b1791b23c2a135b28.zip |
fix preview generation tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/lib/Preview/GeneratorTest.php | 37 |
1 files changed, 23 insertions, 14 deletions
diff --git a/tests/lib/Preview/GeneratorTest.php b/tests/lib/Preview/GeneratorTest.php index ae84d8eb4b3..cc14e78087c 100644 --- a/tests/lib/Preview/GeneratorTest.php +++ b/tests/lib/Preview/GeneratorTest.php @@ -227,19 +227,11 @@ class GeneratorTest extends \Test\TestCase { ->with($this->equalTo('256-256.png')) ->willThrowException(new NotFoundException()); - $image = $this->createMock(IImage::class); + $image = $this->getMockImage(2048, 2048, 'my resized data'); $this->helper->method('getImage') ->with($this->equalTo($maxPreview)) ->willReturn($image); - $image->expects($this->once()) - ->method('resize') - ->with(256); - $image->method('data') - ->willReturn('my resized data'); - $image->method('valid')->willReturn(true); - $image->method('dataMimeType')->willReturn('image/png'); - $previewFile->expects($this->once()) ->method('putContent') ->with('my resized data'); @@ -325,6 +317,27 @@ class GeneratorTest extends \Test\TestCase { $this->generator->getPreview($file, 100, 100); } + private function getMockImage($width, $height, $data = null) { + $image = $this->createMock(IImage::class); + $image->method('height')->willReturn($width); + $image->method('width')->willReturn($height); + $image->method('valid')->willReturn(true); + $image->method('dataMimeType')->willReturn('image/png'); + $image->method('data')->willReturn($data); + + $image->method('resizeCopy')->willReturnCallback(function($size) use ($data) { + return $this->getMockImage($size, $size, $data); + }); + $image->method('preciseResizeCopy')->willReturnCallback(function($width, $height) use ($data) { + return $this->getMockImage($width, $height, $data); + }); + $image->method('cropCopy')->willReturnCallback(function($x, $y, $width, $height) use ($data) { + return $this->getMockImage($width, $height, $data); + }); + + return $image; + } + public function dataSize() { return [ [1024, 2048, 512, 512, false, IPreview::MODE_FILL, 256, 512], @@ -409,14 +422,10 @@ class GeneratorTest extends \Test\TestCase { ->with($this->equalTo($filename)) ->willThrowException(new NotFoundException()); - $image = $this->createMock(IImage::class); + $image = $this->getMockImage($maxX, $maxY); $this->helper->method('getImage') ->with($this->equalTo($maxPreview)) ->willReturn($image); - $image->method('height')->willReturn($maxY); - $image->method('width')->willReturn($maxX); - $image->method('valid')->willReturn(true); - $image->method('dataMimeType')->willReturn('image/png'); $preview = $this->createMock(ISimpleFile::class); $previewFolder->method('newFile') |