diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-06-16 04:59:24 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-06-16 04:59:24 +0000 |
commit | b7528b5edb1f9148ea00ebb6151720e5943b3f0b (patch) | |
tree | 4caf55c53adb188170240f54b924892fbc5f9814 /test/rdoc/test_rdoc_any_method.rb | |
parent | 97ac172d58d695305c39d555155318edb99f1ea7 (diff) |
* 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.rb | 68 |
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 |