Mercurial > hg > soundsoftware-site
view vendor/gems/coderay-1.0.0/test/functional/for_redcloth.rb @ 1082:997f6d7738f7 bug_531
In repo controller entry action, show the page for the file even if it's binary (so user still has access to history etc links). This makes it possible to use the entry action as the default when a file is clicked on
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Thu, 22 Nov 2012 18:04:17 +0000 |
parents | cbb26bc654de |
children |
line wrap: on
line source
require 'test/unit' require File.expand_path('../../lib/assert_warning', __FILE__) $:.unshift File.expand_path('../../../lib', __FILE__) require 'coderay' begin require 'rubygems' unless defined? Gem gem 'RedCloth', '>= 4.0.3' rescue nil require 'redcloth' rescue LoadError warn 'RedCloth not found - skipping for_redcloth tests.' undef RedCloth if defined? RedCloth end class BasicTest < Test::Unit::TestCase def test_for_redcloth require 'coderay/for_redcloth' assert_equal "<p><span lang=\"ruby\" class=\"CodeRay\">puts <span style=\"background-color:hsla(0,100%,50%,0.05)\"><span style=\"color:#710\">"</span><span style=\"color:#D20\">Hello, World!</span><span style=\"color:#710\">"</span></span></span></p>", RedCloth.new('@[ruby]puts "Hello, World!"@').to_html assert_equal <<-BLOCKCODE.chomp, <div lang="ruby" class="CodeRay"> <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">"</span><span style="color:#D20">Hello, World!</span><span style="color:#710">"</span></span></pre></div> </div> BLOCKCODE RedCloth.new('bc[ruby]. puts "Hello, World!"').to_html end def test_for_redcloth_no_lang require 'coderay/for_redcloth' assert_equal "<p><code>puts \"Hello, World!\"</code></p>", RedCloth.new('@puts "Hello, World!"@').to_html assert_equal <<-BLOCKCODE.chomp, <pre><code>puts \"Hello, World!\"</code></pre> BLOCKCODE RedCloth.new('bc. puts "Hello, World!"').to_html end def test_for_redcloth_style require 'coderay/for_redcloth' assert_equal <<-BLOCKCODE.chomp, <pre style=\"color: red;\"><code style=\"color: red;\">puts \"Hello, World!\"</code></pre> BLOCKCODE RedCloth.new('bc{color: red}. puts "Hello, World!"').to_html end def test_for_redcloth_escapes require 'coderay/for_redcloth' assert_equal '<p><span lang="ruby" class="CodeRay">></span></p>', RedCloth.new('@[ruby]>@').to_html assert_equal <<-BLOCKCODE.chomp, <div lang="ruby" class="CodeRay"> <div class="code"><pre>&</pre></div> </div> BLOCKCODE RedCloth.new('bc[ruby]. &').to_html end def test_for_redcloth_escapes2 require 'coderay/for_redcloth' assert_equal "<p><span lang=\"c\" class=\"CodeRay\"><span style=\"color:#579\">#include</span> <span style=\"color:#B44;font-weight:bold\"><test.h></span></span></p>", RedCloth.new('@[c]#include <test.h>@').to_html end # See http://jgarber.lighthouseapp.com/projects/13054/tickets/124-code-markup-does-not-allow-brackets. def test_for_redcloth_false_positive require 'coderay/for_redcloth' assert_warning 'CodeRay::Scanners could not load plugin :project; falling back to :text' do assert_equal '<p><code>[project]_dff.skjd</code></p>', RedCloth.new('@[project]_dff.skjd@').to_html end # false positive, but expected behavior / known issue assert_equal "<p><span lang=\"ruby\" class=\"CodeRay\">_dff.skjd</span></p>", RedCloth.new('@[ruby]_dff.skjd@').to_html assert_warning 'CodeRay::Scanners could not load plugin :project; falling back to :text' do assert_equal <<-BLOCKCODE.chomp, <pre><code>[project]_dff.skjd</code></pre> BLOCKCODE RedCloth.new('bc. [project]_dff.skjd').to_html end end end if defined? RedCloth