aboutsummaryrefslogtreecommitdiffstats
path: root/activestorage
diff options
context:
space:
mode:
authorGeorge Claghorn <george@basecamp.com>2019-04-21 16:05:33 -0400
committerGitHub <noreply@github.com>2019-04-21 16:05:33 -0400
commit142a8b97ef4619cb991666fec86db5d387443ffc (patch)
tree5021e3d0ab4c481653c65e6099d2e620de5d8b12 /activestorage
parent56ffb2654391fc5e312723a1c3c6d58a21016500 (diff)
parentbcf370d689673031073ba2ac5588afe41cc315c9 (diff)
downloadrails-142a8b97ef4619cb991666fec86db5d387443ffc.tar.gz
rails-142a8b97ef4619cb991666fec86db5d387443ffc.tar.bz2
rails-142a8b97ef4619cb991666fec86db5d387443ffc.zip
Merge pull request #36051 from yoones/active-storage-bmp-variants-support
Allow ActiveStorage to generate variants of BMP images
Diffstat (limited to 'activestorage')
-rw-r--r--activestorage/CHANGELOG.md4
-rw-r--r--activestorage/lib/active_storage/engine.rb2
-rw-r--r--activestorage/test/fixtures/files/colors.bmpbin0 -> 2810 bytes
-rw-r--r--activestorage/test/models/variant_test.rb11
4 files changed, 17 insertions, 0 deletions
diff --git a/activestorage/CHANGELOG.md b/activestorage/CHANGELOG.md
index 54fc949172..d524ecf7d6 100644
--- a/activestorage/CHANGELOG.md
+++ b/activestorage/CHANGELOG.md
@@ -1,3 +1,7 @@
+* Permit generating variants of BMP images.
+
+ *Younes Serraj*
+
## Rails 6.0.0.beta3 (March 11, 2019) ##
* No changes.
diff --git a/activestorage/lib/active_storage/engine.rb b/activestorage/lib/active_storage/engine.rb
index fc75a8f816..cbb205627e 100644
--- a/activestorage/lib/active_storage/engine.rb
+++ b/activestorage/lib/active_storage/engine.rb
@@ -33,6 +33,7 @@ module ActiveStorage
image/jpeg
image/pjpeg
image/tiff
+ image/bmp
image/vnd.adobe.photoshop
image/vnd.microsoft.icon
)
@@ -56,6 +57,7 @@ module ActiveStorage
image/jpg
image/jpeg
image/tiff
+ image/bmp
image/vnd.adobe.photoshop
image/vnd.microsoft.icon
application/pdf
diff --git a/activestorage/test/fixtures/files/colors.bmp b/activestorage/test/fixtures/files/colors.bmp
new file mode 100644
index 0000000000..3cc1e8764d
--- /dev/null
+++ b/activestorage/test/fixtures/files/colors.bmp
Binary files differ
diff --git a/activestorage/test/models/variant_test.rb b/activestorage/test/models/variant_test.rb
index d98935eb9f..92e3384042 100644
--- a/activestorage/test/models/variant_test.rb
+++ b/activestorage/test/models/variant_test.rb
@@ -144,6 +144,17 @@ class ActiveStorage::VariantTest < ActiveSupport::TestCase
assert_equal 33, image.height
end
+ test "resized variation of BMP blob" do
+ blob = create_file_blob(filename: "colors.bmp")
+ variant = blob.variant(resize: "15x15").processed
+ assert_match(/colors\.bmp/, variant.service_url)
+
+ image = read_image(variant)
+ assert_equal "BMP", image.type
+ assert_equal 15, image.width
+ assert_equal 8, image.height
+ end
+
test "optimized variation of GIF blob" do
blob = create_file_blob(filename: "image.gif", content_type: "image/gif")