diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-04-01 07:45:16 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-04-01 07:45:16 +0000 |
commit | 46580b51477355fece514573c88cb67030f4a502 (patch) | |
tree | 779c1a64466643461b3daa4cd9a3548b84f0fd55 /test/rdoc/test_rdoc_markup_to_html.rb | |
parent | 9b40cdfe8c973a061c5683ad78c283b9ddb8b2e9 (diff) | |
download | ruby-46580b51477355fece514573c88cb67030f4a502.tar.gz |
Import RDoc 2.5
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rdoc/test_rdoc_markup_to_html.rb')
-rw-r--r-- | test/rdoc/test_rdoc_markup_to_html.rb | 225 |
1 files changed, 213 insertions, 12 deletions
diff --git a/test/rdoc/test_rdoc_markup_to_html.rb b/test/rdoc/test_rdoc_markup_to_html.rb index b611b768a3..29cef00a0c 100644 --- a/test/rdoc/test_rdoc_markup_to_html.rb +++ b/test/rdoc/test_rdoc_markup_to_html.rb @@ -1,18 +1,220 @@ require 'rubygems' -require 'minitest/unit' -require 'rdoc/markup' +require 'rdoc/markup/formatter_test_case' require 'rdoc/markup/to_html' +require 'minitest/autorun' -class TestRDocMarkupToHtml < MiniTest::Unit::TestCase +class TestRDocMarkupToHtml < RDoc::Markup::FormatterTestCase + + add_visitor_tests def setup - @am = RDoc::Markup::AttributeManager.new - @th = RDoc::Markup::ToHtml.new + super + + @to = RDoc::Markup::ToHtml.new + end + + def test_class_gen_relative_url + def gen(from, to) + RDoc::Markup::ToHtml.gen_relative_url from, to + end + + assert_equal 'a.html', gen('a.html', 'a.html') + assert_equal 'b.html', gen('a.html', 'b.html') + + assert_equal 'd.html', gen('a/c.html', 'a/d.html') + assert_equal '../a.html', gen('a/c.html', 'a.html') + assert_equal 'a/c.html', gen('a.html', 'a/c.html') + end + + def accept_blank_line + assert_empty @to.res.join + end + + def accept_heading + assert_equal "<h5>Hello</h5>\n", @to.res.join + end + + def accept_list_end_bullet + assert_equal [], @to.list + assert_equal [], @to.in_list_entry + + assert_equal "<ul>\n</ul>\n", @to.res.join + end + + def accept_list_end_label + assert_equal [], @to.list + assert_equal [], @to.in_list_entry + + assert_equal "<dl>\n</dl>\n", @to.res.join + end + + def accept_list_end_lalpha + assert_equal [], @to.list + assert_equal [], @to.in_list_entry + + assert_equal "<ol style=\"display: lower-alpha\">\n</ol>\n", @to.res.join + end + + def accept_list_end_number + assert_equal [], @to.list + assert_equal [], @to.in_list_entry + + assert_equal "<ol>\n</ol>\n", @to.res.join + end + + def accept_list_end_note + assert_equal [], @to.list + assert_equal [], @to.in_list_entry + + assert_equal "<table>\n</table>\n", @to.res.join + end + + def accept_list_end_ualpha + assert_equal [], @to.list + assert_equal [], @to.in_list_entry + + assert_equal "<ol style=\"display: upper-alpha\">\n</ol>\n", @to.res.join + end + + def accept_list_item_end_bullet + assert_equal %w[</li>], @to.in_list_entry + end + + def accept_list_item_end_label + assert_equal %w[</dd>], @to.in_list_entry + end + + def accept_list_item_end_lalpha + assert_equal %w[</li>], @to.in_list_entry + end + + def accept_list_item_end_note + assert_equal %w[</td></tr>], @to.in_list_entry + end + + def accept_list_item_end_number + assert_equal %w[</li>], @to.in_list_entry + end + + def accept_list_item_end_ualpha + assert_equal %w[</li>], @to.in_list_entry + end + + def accept_list_item_start_bullet + assert_equal "<ul>\n<li>", @to.res.join + end + + def accept_list_item_start_label + assert_equal "<dl>\n<dt>cat</dt><dd>", @to.res.join + end + + def accept_list_item_start_lalpha + assert_equal "<ol style=\"display: lower-alpha\">\n<li>", @to.res.join + end + + def accept_list_item_start_note + assert_equal "<table>\n<tr><td valign=\"top\">cat</td><td>", @to.res.join + end + + def accept_list_item_start_number + assert_equal "<ol>\n<li>", @to.res.join + end + + def accept_list_item_start_ualpha + assert_equal "<ol style=\"display: upper-alpha\">\n<li>", @to.res.join + end + + def accept_list_start_bullet + assert_equal [:BULLET], @to.list + assert_equal [false], @to.in_list_entry + + assert_equal "<ul>\n", @to.res.join + end + + def accept_list_start_label + assert_equal [:LABEL], @to.list + assert_equal [false], @to.in_list_entry + + assert_equal "<dl>\n", @to.res.join + end + + def accept_list_start_lalpha + assert_equal [:LALPHA], @to.list + assert_equal [false], @to.in_list_entry + + assert_equal "<ol style=\"display: lower-alpha\">\n", @to.res.join + end + + def accept_list_start_note + assert_equal [:NOTE], @to.list + assert_equal [false], @to.in_list_entry + + assert_equal "<table>\n", @to.res.join + end + + def accept_list_start_number + assert_equal [:NUMBER], @to.list + assert_equal [false], @to.in_list_entry + + assert_equal "<ol>\n", @to.res.join + end + + def accept_list_start_ualpha + assert_equal [:UALPHA], @to.list + assert_equal [false], @to.in_list_entry + + assert_equal "<ol style=\"display: upper-alpha\">\n", @to.res.join + end + + def accept_paragraph + assert_equal "<p>\nhi\n</p>\n", @to.res.join + end + + def accept_rule + assert_equal '<hr style="height: 4px"></hr>', @to.res.join + end + + def accept_verbatim + assert_equal "<pre>\n hi\n world\n</pre>\n", @to.res.join + end + + def end_accepting + assert_equal 'hi', @to.end_accepting + end + + def start_accepting + assert_equal [], @to.res + assert_equal [], @to.in_list_entry + assert_equal [], @to.list + end + + def test_list_verbatim + str = "* one\n verb1\n verb2\n* two\n" + + expected = <<-EXPECTED +<ul> +<li><p> +one +</p> +<pre> + verb1 + verb2 +</pre> +</li> +<li><p> +two +</p> +</li> +</ul> + EXPECTED + + assert_equal expected, @m.convert(str, @to) end def test_tt_formatting assert_equal "<p>\n<tt>--</tt> — <tt>cats'</tt> cats’\n</p>\n", util_format("<tt>--</tt> -- <tt>cats'</tt> cats'") + assert_equal "<p>\n<b>—</b>\n</p>\n", util_format("<b>--</b>") end @@ -28,18 +230,17 @@ class TestRDocMarkupToHtml < MiniTest::Unit::TestCase assert_equal "<p>\ncat’s-\n</p>\n", util_format("cat\'s-") end - def util_fragment(text) - RDoc::Markup::Fragment.new 0, nil, nil, text + def util_paragraph(text) + RDoc::Markup::Paragraph.new text end def util_format(text) - fragment = util_fragment text + paragraph = util_paragraph text - @th.start_accepting - @th.accept_paragraph @am, fragment - @th.end_accepting + @to.start_accepting + @to.accept_paragraph paragraph + @to.end_accepting end end -MiniTest::Unit.autorun |