aboutsummaryrefslogtreecommitdiffstats
path: root/activestorage
diff options
context:
space:
mode:
authorRafael França <rafaelmfranca@gmail.com>2017-08-11 17:46:02 -0400
committerGitHub <noreply@github.com>2017-08-11 17:46:02 -0400
commit4766b2da0299d520c98b24af7a515ee185a32d22 (patch)
treedcdce39e8d214fc69725529ab72449bc65a2e842 /activestorage
parent701ab978e5967d832a1688f0c7308e7987596cbc (diff)
parent4287f089d351804a4b2cc0a6df685b010721157c (diff)
downloadrails-4766b2da0299d520c98b24af7a515ee185a32d22.tar.gz
rails-4766b2da0299d520c98b24af7a515ee185a32d22.tar.bz2
rails-4766b2da0299d520c98b24af7a515ee185a32d22.zip
Merge pull request #30198 from betesh/activestorage-rack-test-uploaded-file
Activestorage rack test uploaded file
Diffstat (limited to 'activestorage')
-rw-r--r--activestorage/lib/active_storage/attached.rb2
-rw-r--r--activestorage/test/models/attachments_test.rb8
2 files changed, 8 insertions, 2 deletions
diff --git a/activestorage/lib/active_storage/attached.rb b/activestorage/lib/active_storage/attached.rb
index 07e0d5c3ea..f11b62e744 100644
--- a/activestorage/lib/active_storage/attached.rb
+++ b/activestorage/lib/active_storage/attached.rb
@@ -17,7 +17,7 @@ module ActiveStorage
case attachable
when ActiveStorage::Blob
attachable
- when ActionDispatch::Http::UploadedFile
+ when ActionDispatch::Http::UploadedFile, Rack::Test::UploadedFile
ActiveStorage::Blob.create_after_upload! \
io: attachable.open,
filename: attachable.original_filename,
diff --git a/activestorage/test/models/attachments_test.rb b/activestorage/test/models/attachments_test.rb
index 58af5dce6e..34cd62dcde 100644
--- a/activestorage/test/models/attachments_test.rb
+++ b/activestorage/test/models/attachments_test.rb
@@ -18,11 +18,17 @@ class ActiveStorage::AttachmentsTest < ActiveSupport::TestCase
assert_equal "funky.jpg", @user.avatar.filename.to_s
end
- test "attach new blob" do
+ test "attach new blob from a Hash" do
@user.avatar.attach io: StringIO.new("STUFF"), filename: "town.jpg", content_type: "image/jpg"
assert_equal "town.jpg", @user.avatar.filename.to_s
end
+ test "attach new blob from an UploadedFile" do
+ file = file_fixture "racecar.jpg"
+ @user.avatar.attach Rack::Test::UploadedFile.new file
+ assert_equal "racecar.jpg", @user.avatar.filename.to_s
+ end
+
test "access underlying associations of new blob" do
@user.avatar.attach create_blob(filename: "funky.jpg")
assert_equal @user, @user.avatar_attachment.record