summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/puppet/util/rdoc/parser.rb6
-rwxr-xr-xspec/integration/util/rdoc/parser.rb17
-rwxr-xr-xspec/unit/util/rdoc/parser.rb4
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'