Sha256: f934c23dfb8a8d303dea5485dfa88e13c1752477fd4f87330c8f235b36e8b42a
Contents?: true
Size: 1.92 KB
Versions: 1
Compression:
Stored size: 1.92 KB
Contents
require 'spec_helper' describe BBCoder do subject { BBCoder.new("[p]Text and now [b]bolded.[/b][/p]") } context "#configuration" do before do @tags = BBCoder::Configuration.class_variable_get(:@@tags).clone end after do BBCoder::Configuration.class_variable_set(:@@tags, @tags) end it "should return the same object for multiple calls" do BBCoder.configuration.should == BBCoder.configuration end it "should allow to clear the configuration" do BBCoder.configuration.clear BBCoder.configuration[:spoiler].should be_nil end end context "#buffer" do it "should return the same object for multiple calls" do subject.buffer.should == subject.buffer end end context "#configure" do before do @tags = BBCoder::Configuration.class_variable_get(:@@tags).clone end after do BBCoder::Configuration.class_variable_set(:@@tags, @tags) end it "should fail without a block" do lambda { BBCoder.configure }.should raise_error end it "should instance_eval the block onto configuration" do block = Proc.new { tag :p } mock(BBCoder).configuration.stub!.instance_eval(&block) BBCoder.configure(&block) end it "should be able to remove a tag" do BBCoder.configure do remove :spoiler end BBCoder.configuration[:spoiler].should be_nil end end context "#initialize" do it "should split tags up properly" do subject.raw.should == ["[p]", "Text and now ", "[b]", "bolded.", "[/b]", "[/p]"] end it "should split tags up properly without content" do BBCoder.new("[b][/b][u][/u]").raw.should == ["[b]", "[/b]", "[u]", "[/u]"] end end context "#parse" do it "should loop through raw elements and join the buffer" do mock(subject).raw.stub!.each {nil} mock(subject).buffer.stub!.join {"output"} subject.parse end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bbcoder-1.0.1 | spec/base_spec.rb |