1b93137e16
* requires PHP 5.6 * use blazy on linklist since a lot more thumbs are retrieved * thumbnails can be disabled * thumbs size is now 120x120 * thumbs are now cropped to fit the expected size Fixes #345 #425 #487 #543 #588 #590
51 lines
1.5 KiB
PHP
51 lines
1.5 KiB
PHP
<?php
|
|
|
|
require_once 'application/Thumbnailer.php';
|
|
require_once 'application/config/ConfigManager.php';
|
|
|
|
/**
|
|
* Class ThumbnailerTest
|
|
*
|
|
* We only make 1 thumb test because:
|
|
*
|
|
* 1. the thumbnailer library is itself tested
|
|
* 2. we don't want to make too many external requests during the tests
|
|
*/
|
|
class ThumbnailerTest extends PHPUnit_Framework_TestCase
|
|
{
|
|
/**
|
|
* Test a thumbnail with a custom size.
|
|
*/
|
|
public function testThumbnailValid()
|
|
{
|
|
$conf = new ConfigManager('tests/utils/config/configJson');
|
|
$width = 200;
|
|
$height = 200;
|
|
$conf->set('thumbnails.width', $width);
|
|
$conf->set('thumbnails.height', $height);
|
|
|
|
$thumbnailer = new Thumbnailer($conf);
|
|
$thumb = $thumbnailer->get('https://github.com/shaarli/Shaarli/');
|
|
$this->assertNotFalse($thumb);
|
|
$image = imagecreatefromstring(file_get_contents($thumb));
|
|
$this->assertEquals($width, imagesx($image));
|
|
$this->assertEquals($height, imagesy($image));
|
|
}
|
|
|
|
/**
|
|
* Test a thumbnail that can't be retrieved.
|
|
*
|
|
* @expectedException WebThumbnailer\Exception\ThumbnailNotFoundException
|
|
*/
|
|
public function testThumbnailNotValid()
|
|
{
|
|
$oldlog = ini_get('error_log');
|
|
ini_set('error_log', '/dev/null');
|
|
|
|
$thumbnailer = new Thumbnailer(new ConfigManager());
|
|
$thumb = $thumbnailer->get('nope');
|
|
$this->assertFalse($thumb);
|
|
|
|
ini_set('error_log', $oldlog);
|
|
}
|
|
}
|