szurubooru/tests/Tests/JobTests/GetPostThumbJobTest.php
Marcin Kurczewski a2507370cc Fixed thumb generating
New thumbs worked only after refreshing the page and showed placeholder
thumb prior to that. Now they load correctly without need to reload.
2014-05-13 21:21:24 +02:00

53 lines
1.1 KiB
PHP

<?php
class GetPostThumbJobTest extends AbstractTest
{
public function testThumbRetrieval()
{
$this->grantAccess('viewPost');
$post = $this->postMocker->mockSingle();
$output = $this->assert->doesNotThrow(function() use ($post)
{
return Api::run(
new GetPostThumbJob(),
[
JobArgs::ARG_POST_NAME => $post->getName(),
]);
});
$this->assert->isNotNull($post->tryGetWorkingFullPath());
$this->assert->areEqual('image/jpeg', $output->mimeType);
$this->assert->areNotEqual(
file_get_contents(getConfig()->main->mediaPath . DS . 'img' . DS . 'thumb.jpg'),
$output->fileContent);
}
public function testIdFail()
{
$this->grantAccess('viewPost');
$this->assert->throws(function()
{
Api::run(
new GetPostThumbJob(),
[
JobArgs::ARG_POST_ID => 100,
]);
}, 'unsatisfied');
}
public function testInvalidName()
{
$this->grantAccess('viewPost');
$this->assert->throws(function()
{
Api::run(
new GetPostThumbJob(),
[
JobArgs::ARG_POST_NAME => 'nonsense',
]);
}, 'Invalid post name');
}
}