From 8e98bb7758f081622ab5c4eebf3730cce22ee627 Mon Sep 17 00:00:00 2001 From: Ryan Davidson Date: Sun, 6 May 2018 16:25:05 +0100 Subject: Add option to ActiveStorage::Blob to set extract_content_type_from_io This adds a boolean argument called identify to ActiveStorage::Blob methods #create_after_upload, #build_after_upload and #upload. It allows a user to bypass the automatic content_type inference from the io. --- activestorage/test/models/blob_test.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'activestorage/test/models/blob_test.rb') diff --git a/activestorage/test/models/blob_test.rb b/activestorage/test/models/blob_test.rb index daa01015f7..17151117db 100644 --- a/activestorage/test/models/blob_test.rb +++ b/activestorage/test/models/blob_test.rb @@ -43,6 +43,16 @@ class ActiveStorage::BlobTest < ActiveSupport::TestCase assert_equal "text/plain", blob.content_type end + test "create after upload extracts content_type from io when no content_type given and identify: false" do + blob = create_blob content_type: nil, identify: false + assert_equal "text/plain", blob.content_type + end + + test "create after upload uses content_type when identify: false" do + blob = create_blob data: "Article,dates,analysis\n1, 2, 3", filename: "table.csv", content_type: "text/csv", identify: false + assert_equal "text/csv", blob.content_type + end + test "image?" do blob = create_file_blob filename: "racecar.jpg" assert_predicate blob, :image? -- cgit v1.2.3