Sha256: fa782e3c704a202891c1b789e27fb972d78360b22c7ffa2ce455b0d037581e0a
Contents?: true
Size: 1.72 KB
Versions: 3
Compression:
Stored size: 1.72 KB
Contents
#!/usr/bin/env ruby require File.join(File.dirname(__FILE__), "..", "spec_helper") describe "Glyph Language" do before do create_project end after do reset_quiet language('glyph') delete_project end it "should support XML fallback by default" do Glyph.run 'load:all' output_for(%{ i[test] code[ test ] }).gsub(/\s+/, '').should == %{ <i>test</i> <code> test </code>}.gsub(/\s+/, '') end it "should support XML macros" do language('xml') output_for("pre[code[test]]").should == "<pre>\n<code>test</code>\n</pre>" end it "should support XML attributes" do language('xml') output_for("span[@class[test] @style[color:red;] test...]").should == %{ <span class="test" style="color:red;">test...</span> }.strip end it "should detect invalid characters for XML elements and attributes" do language('xml') lambda { interpret("!&test[test]").document }.should raise_error output_for("span[@class[test]@.[test]test]").should == %{<span class="test">test</span>} end it "should notify the user that a macro is not found for invalid elements if xml_fallback is enabled" do # Assuming options.xml_fallback = true language('glyph') lambda { interpret("*a[test]").document }.should raise_error(Glyph::MacroError, "Unknown macro '*a'") end it "should not render blacklisted tags" do language('xml') text = %{ object[test] applet[test] base[test] basefont[test] embed[test] frame[test] frameset[test] iframe[test] isindex[test] test[test] meta[test] noframes[test] noscript[test] object[test] param[test] title[tesy] } output_for(text).gsub(/\s/, '').should == "<test>test</test>" end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
glyph-0.4.2 | spec/macros/xml_spec.rb |
glyph-0.4.1 | spec/macros/xml_spec.rb |
glyph-0.4.0 | spec/macros/xml_spec.rb |