mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
158 lines
3.2 KiB
Ruby
158 lines
3.2 KiB
Ruby
|
require 'rubygems'
|
||
|
require 'minitest/autorun'
|
||
|
require 'rdoc'
|
||
|
require 'rdoc/text'
|
||
|
require 'rdoc/markup'
|
||
|
require 'rdoc/markup/formatter'
|
||
|
|
||
|
class TestRDocText < MiniTest::Unit::TestCase
|
||
|
|
||
|
include RDoc::Text
|
||
|
|
||
|
def test_expand_tabs
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n dave"), 'spaces')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n\tdave"), 'tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '1 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '2 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '3 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '4 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '5 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '6 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '7 space tab')
|
||
|
|
||
|
assert_equal("hello\n dave",
|
||
|
expand_tabs("hello\n \tdave"), '8 space tab')
|
||
|
|
||
|
assert_equal('. .',
|
||
|
expand_tabs(".\t\t."), 'dot tab tab dot')
|
||
|
end
|
||
|
|
||
|
def test_flush_left
|
||
|
text = <<-TEXT
|
||
|
|
||
|
we don't worry too much.
|
||
|
|
||
|
The comments associated with
|
||
|
TEXT
|
||
|
|
||
|
expected = <<-EXPECTED
|
||
|
|
||
|
we don't worry too much.
|
||
|
|
||
|
The comments associated with
|
||
|
EXPECTED
|
||
|
|
||
|
assert_equal expected, flush_left(text)
|
||
|
end
|
||
|
|
||
|
def test_markup
|
||
|
def formatter() RDoc::Markup::ToHtml.new end
|
||
|
|
||
|
assert_equal "<p>\nhi\n</p>\n", markup('hi')
|
||
|
end
|
||
|
|
||
|
def test_normalize_comment
|
||
|
text = <<-TEXT
|
||
|
##
|
||
|
# we don't worry too much.
|
||
|
#
|
||
|
# The comments associated with
|
||
|
TEXT
|
||
|
|
||
|
expected = <<-EXPECTED.rstrip
|
||
|
we don't worry too much.
|
||
|
|
||
|
The comments associated with
|
||
|
EXPECTED
|
||
|
|
||
|
assert_equal expected, normalize_comment(text)
|
||
|
end
|
||
|
|
||
|
def test_parse
|
||
|
assert_kind_of RDoc::Markup::Document, parse('hi')
|
||
|
end
|
||
|
|
||
|
def test_parse_document
|
||
|
assert_equal RDoc::Markup::Document.new, parse(RDoc::Markup::Document.new)
|
||
|
end
|
||
|
|
||
|
def test_parse_empty
|
||
|
assert_equal RDoc::Markup::Document.new, parse('')
|
||
|
end
|
||
|
|
||
|
def test_parse_empty_newline
|
||
|
assert_equal RDoc::Markup::Document.new, parse("#\n")
|
||
|
end
|
||
|
|
||
|
def test_parse_newline
|
||
|
assert_equal RDoc::Markup::Document.new, parse("\n")
|
||
|
end
|
||
|
|
||
|
def test_strip_hashes
|
||
|
text = <<-TEXT
|
||
|
##
|
||
|
# we don't worry too much.
|
||
|
#
|
||
|
# The comments associated with
|
||
|
TEXT
|
||
|
|
||
|
expected = <<-EXPECTED
|
||
|
|
||
|
we don't worry too much.
|
||
|
|
||
|
The comments associated with
|
||
|
EXPECTED
|
||
|
|
||
|
assert_equal expected, strip_hashes(text)
|
||
|
end
|
||
|
|
||
|
def test_strip_newlines
|
||
|
assert_equal ' ', strip_newlines("\n \n")
|
||
|
|
||
|
assert_equal 'hi', strip_newlines("\n\nhi")
|
||
|
|
||
|
assert_equal 'hi', strip_newlines( "hi\n\n")
|
||
|
|
||
|
assert_equal 'hi', strip_newlines("\n\nhi\n\n")
|
||
|
end
|
||
|
|
||
|
def test_strip_stars
|
||
|
text = <<-TEXT
|
||
|
/*
|
||
|
* * we don't worry too much.
|
||
|
*
|
||
|
* The comments associated with
|
||
|
*/
|
||
|
TEXT
|
||
|
|
||
|
expected = <<-EXPECTED
|
||
|
|
||
|
* we don't worry too much.
|
||
|
|
||
|
The comments associated with
|
||
|
|
||
|
EXPECTED
|
||
|
|
||
|
assert_equal expected, strip_stars(text)
|
||
|
end
|
||
|
|
||
|
end
|
||
|
|