Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #8864: fix_strip_links.patch

File fix_strip_links.patch, 1.4 kB (added by lifofifo, 1 year ago)

Use valid regular expression and make all tests pass/implement new test cases

  • actionpack/test/template/text_helper_test.rb

    old new  
    4848   
    4949  def test_strip_links 
    5050    assert_equal "on my mind\nall day long", strip_links("<a href='almost'>on my mind</a>\n<A href='almost'>all day long</A>") 
     51    assert_equal "0wn3d", strip_links("<a href='http://www.rubyonrails.com/'><a href='http://www.rubyonrails.com/' onlclick='steal()'>0wn3d</a></a>") 
     52    assert_equal "Magic", strip_links("<a href='http://www.rubyonrails.com/'>Mag<a href='http://www.ruby-lang.org/'>ic") 
    5153  end 
    52  
     54   
    5355  def test_highlighter 
    5456    assert_equal( 
    5557      "This is a <strong class=\"highlight\">beautiful</strong> morning", 
  • actionpack/lib/action_view/helpers/text_helper.rb

    old new  
    323323      #   strip_links('Blog: <a href="http://www.myblog.com/" class="nav" target=\"_blank\">Visit</a>.') 
    324324      #   # => Blog: Visit 
    325325      def strip_links(text) 
    326         text.gsub(/<a\b.*?>(.*?)<\/a>/mi, '\1') 
     326        text.gsub(/<a\b.*?>/mi, '').gsub(/<\/a>/i, '') 
    327327      end 
    328328 
    329329      VERBOTEN_TAGS = %w(form script plaintext) unless defined?(VERBOTEN_TAGS)