##// END OF EJS Templates
Fixed: Deselecting textile text formatting causes interning empty string errors (#4867)....
Jean-Philippe Lang -
r3332:0fcc436f226f
parent child
Show More
@@ -25,17 +25,17 module Redmine
25 end
25 end
26
26
27 def register(name, formatter, helper)
27 def register(name, formatter, helper)
28 raise ArgumentError, "format name '#{name}' is already taken" if @@formatters[name.to_sym]
28 raise ArgumentError, "format name '#{name}' is already taken" if @@formatters[name.to_s]
29 @@formatters[name.to_sym] = {:formatter => formatter, :helper => helper}
29 @@formatters[name.to_s] = {:formatter => formatter, :helper => helper}
30 end
30 end
31
31
32 def formatter_for(name)
32 def formatter_for(name)
33 entry = @@formatters[name.to_sym]
33 entry = @@formatters[name.to_s]
34 (entry && entry[:formatter]) || Redmine::WikiFormatting::NullFormatter::Formatter
34 (entry && entry[:formatter]) || Redmine::WikiFormatting::NullFormatter::Formatter
35 end
35 end
36
36
37 def helper_for(name)
37 def helper_for(name)
38 entry = @@formatters[name.to_sym]
38 entry = @@formatters[name.to_s]
39 (entry && entry[:helper]) || Redmine::WikiFormatting::NullFormatter::Helper
39 (entry && entry[:helper]) || Redmine::WikiFormatting::NullFormatter::Helper
40 end
40 end
41
41
@@ -19,6 +19,16 require File.dirname(__FILE__) + '/../../../test_helper'
19
19
20 class Redmine::WikiFormattingTest < ActiveSupport::TestCase
20 class Redmine::WikiFormattingTest < ActiveSupport::TestCase
21
21
22 def test_textile_formatter
23 assert_equal Redmine::WikiFormatting::Textile::Formatter, Redmine::WikiFormatting.formatter_for('textile')
24 assert_equal Redmine::WikiFormatting::Textile::Helper, Redmine::WikiFormatting.helper_for('textile')
25 end
26
27 def test_null_formatter
28 assert_equal Redmine::WikiFormatting::NullFormatter::Formatter, Redmine::WikiFormatting.formatter_for('')
29 assert_equal Redmine::WikiFormatting::NullFormatter::Helper, Redmine::WikiFormatting.helper_for('')
30 end
31
22 def test_should_link_urls_and_email_addresses
32 def test_should_link_urls_and_email_addresses
23 raw = <<-DIFF
33 raw = <<-DIFF
24 This is a sample *text* with a link: http://www.redmine.org
34 This is a sample *text* with a link: http://www.redmine.org
General Comments 0
You need to be logged in to leave comments. Login now