@@ -25,17 +25,17 module Redmine | |||
|
25 | 25 | end |
|
26 | 26 | |
|
27 | 27 | def register(name, formatter, helper) |
|
28 |
raise ArgumentError, "format name '#{name}' is already taken" if @@formatters[name.to_s |
|
|
29 |
@@formatters[name.to_s |
|
|
28 | raise ArgumentError, "format name '#{name}' is already taken" if @@formatters[name.to_s] | |
|
29 | @@formatters[name.to_s] = {:formatter => formatter, :helper => helper} | |
|
30 | 30 | end |
|
31 | 31 | |
|
32 | 32 | def formatter_for(name) |
|
33 |
entry = @@formatters[name.to_s |
|
|
33 | entry = @@formatters[name.to_s] | |
|
34 | 34 | (entry && entry[:formatter]) || Redmine::WikiFormatting::NullFormatter::Formatter |
|
35 | 35 | end |
|
36 | 36 | |
|
37 | 37 | def helper_for(name) |
|
38 |
entry = @@formatters[name.to_s |
|
|
38 | entry = @@formatters[name.to_s] | |
|
39 | 39 | (entry && entry[:helper]) || Redmine::WikiFormatting::NullFormatter::Helper |
|
40 | 40 | end |
|
41 | 41 |
@@ -19,6 +19,16 require File.dirname(__FILE__) + '/../../../test_helper' | |||
|
19 | 19 | |
|
20 | 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 | 32 | def test_should_link_urls_and_email_addresses |
|
23 | 33 | raw = <<-DIFF |
|
24 | 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