]> git.wincent.com - wikitext.git/commitdiff
Accept options hash in "to_wikitext" and "w" methods
authorWincent Colaiuta <win@wincent.com>
Mon, 23 Feb 2009 21:39:01 +0000 (22:39 +0100)
committerWincent Colaiuta <win@wincent.com>
Mon, 23 Feb 2009 21:39:01 +0000 (22:39 +0100)
Seeing as "w" is the most frequently-used means of translating
wikitext in the context of a web application, it makes sense to
provide a means of passing in an optional options hash so that
overrides can be conveniently fed into the parser on demand.

Signed-off-by: Wincent Colaiuta <win@wincent.com>
lib/wikitext/string.rb
spec/string_spec.rb

index c12117e1c91eb5c2853143301ea5216f94b4f3f9..f17cc781e9bbfe0724c2dec1fcbbaa2e081f685a 100644 (file)
@@ -15,8 +15,8 @@
 require 'wikitext/parser'
 
 class String
-  def to_wikitext
-    Wikitext::Parser.shared_parser.parse wikitext_preprocess
+  def to_wikitext options = {}
+    Wikitext::Parser.shared_parser.parse wikitext_preprocess, options
   end
   alias :w :to_wikitext
 
index dacd8228600dbd609995f2318d1c2f38aa36672d..09f21d1408f6607e5e3c7f55ada1289240f6f598 100644 (file)
@@ -24,4 +24,9 @@ describe String, 'wikitext extensions' do
   it 'should provide a w method on all strings' do
     "'''strong'''".w.should == "<p><strong>strong</strong></p>\n"
   end
+
+  # the options get passed along to the parser
+  it 'should accept an optional options hash' do
+    "= foo =".w(:base_heading_level => 2).should == "<h3>foo</h3>\n"
+  end
 end