summaryrefslogtreecommitdiff
path: root/test/rdoc/test_rdoc_parser_ruby.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-12-28 22:08:56 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-12-28 22:08:56 +0000
commite2efe8e81dc7e9fce40b024df6a20bbf4b830350 (patch)
tree942e66e071e759c7db670a42daeac26c7437f25b /test/rdoc/test_rdoc_parser_ruby.rb
parent90d5bcf9104fe58887cf705b718a9c7b537b51a5 (diff)
Import RDoc 3.1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rdoc/test_rdoc_parser_ruby.rb')
-rw-r--r--test/rdoc/test_rdoc_parser_ruby.rb89
1 files changed, 89 insertions, 0 deletions
diff --git a/test/rdoc/test_rdoc_parser_ruby.rb b/test/rdoc/test_rdoc_parser_ruby.rb
index f2fa18c67b..dcaf561369 100644
--- a/test/rdoc/test_rdoc_parser_ruby.rb
+++ b/test/rdoc/test_rdoc_parser_ruby.rb
@@ -32,6 +32,66 @@ class TestRDocParserRuby < MiniTest::Unit::TestCase
@tempfile2.close
end
+ def test_extract_call_seq
+ m = RDoc::AnyMethod.new nil, 'm'
+ p = util_parser ''
+
+ comment = <<-COMMENT
+ # call-seq:
+ # bla => true or false
+ #
+ # moar comment
+ COMMENT
+
+ p.extract_call_seq comment, m
+
+ assert_equal "bla => true or false\n", m.call_seq
+ end
+
+ def test_extract_call_seq_blank
+ m = RDoc::AnyMethod.new nil, 'm'
+ p = util_parser ''
+
+ comment = <<-COMMENT
+ # call-seq:
+ # bla => true or false
+ #
+ COMMENT
+
+ p.extract_call_seq comment, m
+
+ assert_equal "bla => true or false\n", m.call_seq
+ end
+
+ def test_extract_call_seq_no_blank
+ m = RDoc::AnyMethod.new nil, 'm'
+ p = util_parser ''
+
+ comment = <<-COMMENT
+ # call-seq:
+ # bla => true or false
+ COMMENT
+
+ p.extract_call_seq comment, m
+
+ assert_equal "bla => true or false\n", m.call_seq
+ end
+
+ def test_extract_call_seq_undent
+ m = RDoc::AnyMethod.new nil, 'm'
+ p = util_parser ''
+
+ comment = <<-COMMENT
+ # call-seq:
+ # bla => true or false
+ # moar comment
+ COMMENT
+
+ p.extract_call_seq comment, m
+
+ assert_equal "bla => true or false\nmoar comment\n", m.call_seq
+ end
+
def test_get_symbol_or_name
util_parser "* & | + 5 / 4"
@@ -503,6 +563,35 @@ end
assert_equal @top_level, blah.file
end
+ def test_parse_class_multi_ghost_methods
+ util_parser <<-'CLASS'
+class Foo
+ ##
+ # :method: one
+ #
+ # my method
+
+ ##
+ # :method: two
+ #
+ # my method
+
+ [:one, :two].each do |t|
+ eval("def #{t}; \"#{t}\"; end")
+ end
+end
+ CLASS
+
+ tk = @parser.get_tk
+
+ @parser.parse_class @top_level, RDoc::Parser::Ruby::NORMAL, tk, ''
+
+ foo = @top_level.classes.first
+ assert_equal 'Foo', foo.full_name
+
+ assert_equal 2, foo.method_list.length
+ end
+
def test_parse_class_nested_superclass
util_top_level
foo = @top_level.add_module RDoc::NormalModule, 'Foo'