diff options
| author | Brice Figureau <brice-puppet@daysofwonder.com> | 2009-12-28 16:47:57 +0100 |
|---|---|---|
| committer | James Turnbull <james@lovedthanlost.net> | 2010-01-18 23:19:27 +1100 |
| commit | d31ff7ebee14f79b523c3fe4c974d4e6add47a2d (patch) | |
| tree | f1d69605da24925099e8b8a940cec703f77263ae | |
| parent | a9fb82b0026e75a670fec553b17de3b0f091c2a5 (diff) | |
| download | puppet-d31ff7ebee14f79b523c3fe4c974d4e6add47a2d.tar.gz puppet-d31ff7ebee14f79b523c3fe4c974d4e6add47a2d.tar.xz puppet-d31ff7ebee14f79b523c3fe4c974d4e6add47a2d.zip | |
Adapt to method name change since 8971d8
When the definition/hostclass/node AST types were removed, the
parentclass method was renamed to 'parent'.
This patch fixes the incorrect rdoc usage (and some deeper
integration test so that it won't happen again).
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
| -rw-r--r-- | lib/puppet/util/rdoc/parser.rb | 6 | ||||
| -rwxr-xr-x | spec/integration/util/rdoc/parser.rb | 17 | ||||
| -rwxr-xr-x | spec/unit/util/rdoc/parser.rb | 4 |
3 files changed, 22 insertions, 5 deletions
diff --git a/lib/puppet/util/rdoc/parser.rb b/lib/puppet/util/rdoc/parser.rb index 4d0ac484f..9a2bef932 100644 --- a/lib/puppet/util/rdoc/parser.rb +++ b/lib/puppet/util/rdoc/parser.rb @@ -236,7 +236,7 @@ class Parser Puppet.debug "rdoc: found new class %s" % name container, name = get_class_or_module(container, name) - superclass = klass.parentclass + superclass = klass.parent superclass = "" if superclass.nil? or superclass.empty? @stats.num_classes += 1 @@ -266,7 +266,7 @@ class Parser # create documentation for a node def document_node(name, node, container) Puppet.debug "rdoc: found new node %s" % name - superclass = node.parentclass + superclass = node.parent superclass = "" if superclass.nil? or superclass.empty? comment = node.doc @@ -294,7 +294,7 @@ class Parser # find superclas if any @stats.num_methods += 1 - # find the parentclass + # find the parent # split define name by :: to find the complete module hierarchy container, name = get_class_or_module(container,name) diff --git a/spec/integration/util/rdoc/parser.rb b/spec/integration/util/rdoc/parser.rb index 542660998..1dd36c699 100755 --- a/spec/integration/util/rdoc/parser.rb +++ b/spec/integration/util/rdoc/parser.rb @@ -35,8 +35,25 @@ describe RDoc::Parser do File.unlink(@parsedfile) end + def get_test_class(toplevel) + # toplevel -> main -> test + toplevel.classes[0].classes[0] + end + it "should parse to RDoc data structure" do @parser.expects(:document_class).with { |n,k,c| n == "::test" and k.is_a?(Puppet::Parser::ResourceType) } @parser.scan end + + it "should get a PuppetClass for the main class" do + @parser.scan.classes[0].should be_a RDoc::PuppetClass + end + + it "should produce a PuppetClass whose name is test" do + get_test_class(@parser.scan).name.should == "test" + end + + it "should produce a PuppetClass whose comment is 'comment'" do + get_test_class(@parser.scan).comment.should == "comment\n" + end end diff --git a/spec/unit/util/rdoc/parser.rb b/spec/unit/util/rdoc/parser.rb index 19c91bb9a..ce776da9b 100755 --- a/spec/unit/util/rdoc/parser.rb +++ b/spec/unit/util/rdoc/parser.rb @@ -252,7 +252,7 @@ describe RDoc::Parser do describe "when documenting nodes" do before :each do @code = stub_everything 'code' - @node = stub_everything 'node', :doc => "mydoc", :parentclass => "parent", :code => @code, :file => "file", :line => 42 + @node = stub_everything 'node', :doc => "mydoc", :parent => "parent", :code => @code, :file => "file", :line => 42 @rdoc_node = stub_everything 'rdocnode' @class = stub_everything 'class' @@ -295,7 +295,7 @@ describe RDoc::Parser do describe "when documenting classes" do before :each do @code = stub_everything 'code' - @class = stub_everything 'class', :doc => "mydoc", :parentclass => "parent", :code => @code, :file => "file", :line => 42 + @class = stub_everything 'class', :doc => "mydoc", :parent => "parent", :code => @code, :file => "file", :line => 42 @rdoc_class = stub_everything 'rdoc-class' @module = stub_everything 'class' |
