aboutsummaryrefslogtreecommitdiffstats
path: root/test/rdoc/test_rdoc_any_method.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-16 04:59:24 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-16 04:59:24 +0000
commitb7528b5edb1f9148ea00ebb6151720e5943b3f0b (patch)
tree4caf55c53adb188170240f54b924892fbc5f9814 /test/rdoc/test_rdoc_any_method.rb
parent97ac172d58d695305c39d555155318edb99f1ea7 (diff)
downloadruby-b7528b5edb1f9148ea00ebb6151720e5943b3f0b.tar.gz
* lib/rdoc.rb: Import RDoc 3.7 release candidate
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rdoc/test_rdoc_any_method.rb')
-rw-r--r--test/rdoc/test_rdoc_any_method.rb68
1 files changed, 68 insertions, 0 deletions
diff --git a/test/rdoc/test_rdoc_any_method.rb b/test/rdoc/test_rdoc_any_method.rb
index 930d9773bd..c0feccef95 100644
--- a/test/rdoc/test_rdoc_any_method.rb
+++ b/test/rdoc/test_rdoc_any_method.rb
@@ -83,6 +83,40 @@ method(a, b) { |c, d| ... }
assert_equal '', @c2_a.markup_code
end
+ def test_marshal_dump
+ top_level = RDoc::TopLevel.new 'file.rb'
+ m = RDoc::AnyMethod.new nil, 'method'
+ m.block_params = 'some_block'
+ m.call_seq = 'call_seq'
+ m.comment = 'this is a comment'
+ m.params = 'param'
+ m.record_location top_level
+
+ cm = RDoc::ClassModule.new 'Klass'
+ cm.add_method m
+
+ al = RDoc::Alias.new nil, 'method', 'aliased', 'alias comment'
+ al_m = m.add_alias al, cm
+
+ loaded = Marshal.load Marshal.dump m
+
+ comment = RDoc::Markup::Document.new(
+ RDoc::Markup::Paragraph.new('this is a comment'))
+
+ assert_equal m, loaded
+
+ assert_equal [al_m], loaded.aliases
+ assert_equal 'some_block', loaded.block_params
+ assert_equal 'call_seq', loaded.call_seq
+ assert_equal comment, loaded.comment
+ assert_equal top_level, loaded.file
+ assert_equal 'Klass#method', loaded.full_name
+ assert_equal 'method', loaded.name
+ assert_equal 'param', loaded.params
+ assert_equal nil, loaded.singleton # defaults to nil
+ assert_equal :public, loaded.visibility
+ end
+
def test_marshal_load
instance_method = Marshal.load Marshal.dump(@c1.method_list.last)
@@ -103,6 +137,40 @@ method(a, b) { |c, d| ... }
assert_equal '()', class_method.params
end
+ def test_marshal_load_version_0
+ m = RDoc::AnyMethod.new nil, 'method'
+ cm = RDoc::ClassModule.new 'Klass'
+ cm.add_method m
+ al = RDoc::Alias.new nil, 'method', 'aliased', 'alias comment'
+ al_m = m.add_alias al, cm
+
+ loaded = Marshal.load "\x04\bU:\x14RDoc::AnyMethod[\x0Fi\x00I" \
+ "\"\vmethod\x06:\x06EF\"\x11Klass#method0:\vpublic" \
+ "o:\eRDoc::Markup::Document\x06:\v@parts[\x06" \
+ "o:\x1CRDoc::Markup::Paragraph\x06;\t[\x06I" \
+ "\"\x16this is a comment\x06;\x06FI" \
+ "\"\rcall_seq\x06;\x06FI\"\x0Fsome_block\x06;\x06F" \
+ "[\x06[\aI\"\faliased\x06;\x06Fo;\b\x06;\t[\x06" \
+ "o;\n\x06;\t[\x06I\"\x12alias comment\x06;\x06FI" \
+ "\"\nparam\x06;\x06F"
+
+ comment = RDoc::Markup::Document.new(
+ RDoc::Markup::Paragraph.new('this is a comment'))
+
+ assert_equal m, loaded
+
+ assert_equal [al_m], loaded.aliases
+ assert_equal 'some_block', loaded.block_params
+ assert_equal 'call_seq', loaded.call_seq
+ assert_equal comment, loaded.comment
+ assert_equal 'Klass#method', loaded.full_name
+ assert_equal 'method', loaded.name
+ assert_equal 'param', loaded.params
+ assert_equal nil, loaded.singleton # defaults to nil
+ assert_equal :public, loaded.visibility
+ assert_equal nil, loaded.file
+ end
+
def test_name
m = RDoc::AnyMethod.new nil, nil