Commit b1b61331 authored by maeda's avatar maeda

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: https://svn.redmine.org/redmine/trunk@17850 e93f8b46-1217-0410-a6f0-8f06a7374b81
parent 94a8486d
......@@ -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
......
......@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment