@@ -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_s |
|
28 | raise ArgumentError, "format name '#{name}' is already taken" if @@formatters[name.to_s] | |
29 |
@@formatters[name.to_s |
|
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_s |
|
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_s |
|
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