aboutsummaryrefslogtreecommitdiffstats
path: root/actiontext/test
diff options
context:
space:
mode:
authorJavan Makhmali <javan@javan.us>2019-01-25 16:44:35 -0500
committerJavan Makhmali <javan@javan.us>2019-01-25 16:57:36 -0500
commit48c6ef9a7236a17799bb5d217fef721afdf06f44 (patch)
treeb38ce0838e138a072d2c75bf77f8476a92f4bc23 /actiontext/test
parentc7e7a4c79b21c7b9ee5b81589f4b4812b747ca59 (diff)
downloadrails-48c6ef9a7236a17799bb5d217fef721afdf06f44.tar.gz
rails-48c6ef9a7236a17799bb5d217fef721afdf06f44.tar.bz2
rails-48c6ef9a7236a17799bb5d217fef721afdf06f44.zip
Fix error saving Action Text content containing non-blob attachables
Failing test before the ActionText::RichText change: ``` Error: ActionText::ModelTest#test_embed_extraction_only_extracts_file_attachments: ArgumentError: Could not find or build blob: expected attachable, got #<ActionText::Attachables::RemoteImage:0x00007fb0259fef70 @url="http://example.com/cat.jpg", @content_type="image", @width=nil, @height=nil> ```
Diffstat (limited to 'actiontext/test')
-rw-r--r--actiontext/test/unit/model_test.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/actiontext/test/unit/model_test.rb b/actiontext/test/unit/model_test.rb
index 122a20700b..d56363adc0 100644
--- a/actiontext/test/unit/model_test.rb
+++ b/actiontext/test/unit/model_test.rb
@@ -35,6 +35,15 @@ class ActionText::ModelTest < ActiveSupport::TestCase
assert_equal "racecar.jpg", message.content.embeds.first.filename.to_s
end
+ test "embed extraction only extracts file attachments" do
+ remote_image_html = '<action-text-attachment content-type="image" url="http://example.com/cat.jpg"></action-text-attachment>'
+ blob = create_file_blob(filename: "racecar.jpg", content_type: "image/jpg")
+ content = ActionText::Content.new(remote_image_html).append_attachables(blob)
+ message = Message.create!(subject: "Greetings", content: content)
+ assert_equal [ActionText::Attachables::RemoteImage, ActiveStorage::Blob], message.content.body.attachables.map(&:class)
+ assert_equal [ActiveStorage::Attachment], message.content.embeds.map(&:class)
+ end
+
test "saving content" do
message = Message.create!(subject: "Greetings", content: "<h1>Hello world</h1>")
assert_equal "Hello world", message.content.to_plain_text