summaryrefslogtreecommitdiff
path: root/test/functional
diff options
context:
space:
mode:
authormurphy <murphy@rubychan.de>2010-01-01 04:44:10 +0000
committermurphy <murphy@rubychan.de>2010-01-01 04:44:10 +0000
commit228726f6bfed89b86fb985d554040f91de776840 (patch)
tree007a9c0201ff8ec6f8f6b665ca65266acd950715 /test/functional
parentc45da135ebc403f9e10c09afec73b44bdbc74153 (diff)
downloadcoderay-228726f6bfed89b86fb985d554040f91de776840.tar.gz
Cleaning up functional tests; test:functional scans without loading Rubygems now.
Diffstat (limited to 'test/functional')
-rwxr-xr-xtest/functional/basic.rb78
-rw-r--r--test/functional/for_redcloth.rb87
-rwxr-xr-xtest/functional/suite.rb3
-rw-r--r--test/functional/vhdl.rb2
4 files changed, 93 insertions, 77 deletions
diff --git a/test/functional/basic.rb b/test/functional/basic.rb
index bbf6d7a..6eb9782 100755
--- a/test/functional/basic.rb
+++ b/test/functional/basic.rb
@@ -90,81 +90,9 @@ more code # and another comment, in-line.
assert_equal 4, CodeRay.scan(rHTML, :rhtml).lines_of_code
end
- begin
- require 'rubygems'
- gem 'RedCloth', '>= 4.0.3' rescue nil
- require 'redcloth'
-
- def test_for_redcloth
- require 'rubygems'
- require 'coderay/for_redcloth'
- assert_equal "<p><span lang=\"ruby\" class=\"CodeRay\">puts <span style=\"background-color:#fff0f0;color:#D20\"><span style=\"color:#710\">&quot;</span><span style=\"\">Hello, World!</span><span style=\"color:#710\">&quot;</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:#fff0f0;color:#D20"><span style="color:#710">&quot;</span><span style="">Hello, World!</span><span style="color:#710">&quot;</span></span></pre></div>
-</div>
- BLOCKCODE
- RedCloth.new('bc[ruby]. puts "Hello, World!"').to_html
- end
-
- def test_for_redcloth_no_lang
- require 'rubygems'
- 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 'rubygems'
- 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 'rubygems'
- require 'coderay/for_redcloth'
- assert_equal '<p><span lang="ruby" class="CodeRay">&gt;</span></p>',
- RedCloth.new('@[ruby]>@').to_html
- assert_equal <<-BLOCKCODE.chomp,
-<div lang="ruby" class="CodeRay">
- <div class="code"><pre>&amp;</pre></div>
-</div>
- BLOCKCODE
- RedCloth.new('bc[ruby]. &').to_html
- end
-
- def test_for_redcloth_escapes2
- require 'rubygems'
- 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\">&lt;test.h&gt;</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 'rubygems'
- require 'coderay/for_redcloth'
- assert_equal '<p><code>[project]_dff.skjd</code></p>',
- RedCloth.new('@[project]_dff.skjd@').to_html
- # 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_equal <<-BLOCKCODE.chomp,
-<pre><code>[project]_dff.skjd</code></pre>
- BLOCKCODE
- RedCloth.new('bc. [project]_dff.skjd').to_html
- end
- rescue LoadError
- $stderr.puts 'RedCloth not found - skipping for_redcloth tests.'
- end
+ def test_rubygems_not_loaded
+ assert_equal nil, defined? Gem
+ end unless RUBY_VERSION >= '1.9'
def test_list_of_encoders
assert_kind_of(Array, CodeRay::Encoders.list)
diff --git a/test/functional/for_redcloth.rb b/test/functional/for_redcloth.rb
new file mode 100644
index 0000000..e955e30
--- /dev/null
+++ b/test/functional/for_redcloth.rb
@@ -0,0 +1,87 @@
+require "test/unit"
+
+require 'pathname'
+MYDIR = File.dirname(__FILE__)
+LIBDIR = Pathname.new(MYDIR).join('..', '..', 'lib').cleanpath.to_s
+$LOAD_PATH.unshift LIBDIR
+require "coderay"
+
+begin
+ require 'rubygems'
+ gem 'RedCloth', '>= 4.0.3' rescue nil
+ require 'redcloth'
+rescue LoadError
+ $stderr.puts 'RedCloth not found - skipping for_redcloth tests.'
+end
+
+class BasicTest < Test::Unit::TestCase
+
+ def test_for_redcloth
+ require 'rubygems'
+ require 'coderay/for_redcloth'
+ assert_equal "<p><span lang=\"ruby\" class=\"CodeRay\">puts <span style=\"background-color:#fff0f0;color:#D20\"><span style=\"color:#710\">&quot;</span><span style=\"\">Hello, World!</span><span style=\"color:#710\">&quot;</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:#fff0f0;color:#D20"><span style="color:#710">&quot;</span><span style="">Hello, World!</span><span style="color:#710">&quot;</span></span></pre></div>
+</div>
+ BLOCKCODE
+ RedCloth.new('bc[ruby]. puts "Hello, World!"').to_html
+ end
+
+ def test_for_redcloth_no_lang
+ require 'rubygems'
+ 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 'rubygems'
+ 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 'rubygems'
+ require 'coderay/for_redcloth'
+ assert_equal '<p><span lang="ruby" class="CodeRay">&gt;</span></p>',
+ RedCloth.new('@[ruby]>@').to_html
+ assert_equal <<-BLOCKCODE.chomp,
+<div lang="ruby" class="CodeRay">
+ <div class="code"><pre>&amp;</pre></div>
+</div>
+ BLOCKCODE
+ RedCloth.new('bc[ruby]. &').to_html
+ end
+
+ def test_for_redcloth_escapes2
+ require 'rubygems'
+ 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\">&lt;test.h&gt;</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 'rubygems'
+ require 'coderay/for_redcloth'
+ assert_equal '<p><code>[project]_dff.skjd</code></p>',
+ RedCloth.new('@[project]_dff.skjd@').to_html
+ # 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_equal <<-BLOCKCODE.chomp,
+<pre><code>[project]_dff.skjd</code></pre>
+ BLOCKCODE
+ RedCloth.new('bc. [project]_dff.skjd').to_html
+ end
+
+end if defined? RedCloth \ No newline at end of file
diff --git a/test/functional/suite.rb b/test/functional/suite.rb
index 6c6d625..ae9c7f0 100755
--- a/test/functional/suite.rb
+++ b/test/functional/suite.rb
@@ -1,9 +1,10 @@
require 'test/unit'
-require 'pathname'
+require 'pathname'
MYDIR = File.dirname(__FILE__)
LIBDIR = Pathname.new(MYDIR).join('..', '..', 'lib').cleanpath.to_s
$LOAD_PATH.unshift MYDIR, LIBDIR
require 'basic'
+require 'load_plugin_scanner'
require 'word_list'
diff --git a/test/functional/vhdl.rb b/test/functional/vhdl.rb
index fb4b4e1..c7e3824 100644
--- a/test/functional/vhdl.rb
+++ b/test/functional/vhdl.rb
@@ -34,7 +34,7 @@ class VHDL < CodeRay::Scanners::Scanner
add(PREDEFINED_TYPES, :pre_type).
add(PREDEFINED_CONSTANTS, :pre_constant)
- ESCAPE = / [rbfnrtv\n\\'"] | x[a-fA-F0-9]{1,2} | [0-7]{1,3} /x
+ ESCAPE = / [rbfntv\n\\'"] | x[a-fA-F0-9]{1,2} | [0-7]{1,3} /x
UNICODE_ESCAPE = / u[a-fA-F0-9]{4} | U[a-fA-F0-9]{8} /x
def scan_tokens tokens, options