1
0
mirror of https://github.com/meineerde/redmine.git synced 2025-12-21 16:01:14 +00:00

Makes sure the generated thumbnail is always of at least the requested size (#13688).

Patch by Jens Krämer and Marius BALTEANU.


git-svn-id: http://svn.redmine.org/redmine/trunk@17850 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Go MAEDA 2019-02-05 13:50:20 +00:00
parent 29063283da
commit 4c38f46184
2 changed files with 19 additions and 1 deletions

View File

@ -209,7 +209,7 @@ class Attachment < ActiveRecord::Base
size = options[:size].to_i
if size > 0
# Limit the number of thumbnails per image
size = (size / 50) * 50
size = (size / 50.0).ceil * 50
# Maximum thumbnail size
size = 800 if size > 800
else

View File

@ -480,6 +480,24 @@ class AttachmentTest < ActiveSupport::TestCase
attachment = Attachment.find(16)
assert_nil attachment.thumbnail
end
def test_thumbnail_should_be_at_least_of_requested_size
set_fixtures_attachments_directory
attachment = Attachment.find(16)
Attachment.clear_thumbnails
[
[0, 100],
[49, 50],
[50, 50],
[51, 100],
[100, 100],
[101, 150],
].each do |size, generated_size|
thumbnail = attachment.thumbnail(size: size)
assert_equal "8e0294de2441577c529f170b6fb8f638_2654_#{generated_size}.thumb",
File.basename(thumbnail)
end
end
else
puts '(ImageMagick convert not available)'
end