]> git.openstreetmap.org Git - rails.git/blobdiff - test/lib/rich_text_test.rb
Skip images with missing src
[rails.git] / test / lib / rich_text_test.rb
index 8c12053179d2389b7575506905c49d453ef89075..e601c36fc5d3b1c27a1443985e9110840fded551 100644 (file)
@@ -275,11 +275,41 @@ class RichTextTest < ActiveSupport::TestCase
     assert_equal "https://example.com/image1.jpg", r.image
   end
 
     assert_equal "https://example.com/image1.jpg", r.image
   end
 
+  def test_markdown_image_with_empty_src
+    r = RichText.new("markdown", "![invalid]()")
+    assert_nil r.image
+  end
+
+  def test_markdown_skip_image_with_empty_src
+    r = RichText.new("markdown", "![invalid]() ![valid](https://example.com/valid.gif)")
+    assert_equal "https://example.com/valid.gif", r.image
+  end
+
   def test_markdown_html_image
     r = RichText.new("markdown", "<img src='https://example.com/img_element.png'>")
     assert_equal "https://example.com/img_element.png", r.image
   end
 
   def test_markdown_html_image
     r = RichText.new("markdown", "<img src='https://example.com/img_element.png'>")
     assert_equal "https://example.com/img_element.png", r.image
   end
 
+  def test_markdown_html_image_with_empty_src
+    r = RichText.new("markdown", "<img src=''>")
+    assert_nil r.image
+  end
+
+  def test_markdown_skip_html_image_with_empty_src
+    r = RichText.new("markdown", "<img src=''> <img src='https://example.com/next_img_element.png'>")
+    assert_equal "https://example.com/next_img_element.png", r.image
+  end
+
+  def test_markdown_html_image_without_src
+    r = RichText.new("markdown", "<img>")
+    assert_nil r.image
+  end
+
+  def test_markdown_skip_html_image_without_src
+    r = RichText.new("markdown", "<img> <img src='https://example.com/next_img_element.png'>")
+    assert_equal "https://example.com/next_img_element.png", r.image
+  end
+
   private
 
   def assert_html(richtext, &block)
   private
 
   def assert_html(richtext, &block)