Merge pull request #37 from iankronquist/markdown-madness/PDOC-30

(PDOC-30) Fix Markdown parsing lists parsing
This commit is contained in:
Hailee Kenney 2015-07-20 16:56:51 -07:00
commit 0d8c4e75fe
3 changed files with 10 additions and 3 deletions

View File

@ -58,7 +58,14 @@ class PuppetX::PuppetLabs::Strings::Pops::YARDStatement < OpenStruct
# FIXME: The gsub trims comments, but is extremely optimistic: It
# assumes only one space separates the comment body from the
# comment character.
comments.unshift line.gsub(/^\s*#\s/, '')
# NOTE: We cannot just trim any amount of whitespace as indentation
# is sometimes significant in markdown. We would need a real parser.
# Comments which begin with some whitespace, a hash and then some
# tabs and spaces should be scrubbed. Comments which just have a
# solitary hash then a newline should keep that newline since newlines
# are significant in markdown.
comments.unshift line.gsub(/^\s*#[\t ]/, '').gsub(/^\s*#\n/, "\n")
else
# No comment found on this line. We must be done piecing together a
# comment block.

View File

@ -32,7 +32,7 @@ describe PuppetX::PuppetLabs::Strings::YARD::Handlers::DefinedTypeHandler do
parse(puppet_code, :puppet)
comment = "Definition: foo::bar\nThis class does some stuff"
comment = "Definition: foo::bar\n\nThis class does some stuff"
expect(the_definedtype).to document_a(:type => :definedtype, :docstring => comment)
end

View File

@ -31,7 +31,7 @@ describe PuppetX::PuppetLabs::Strings::YARD::Handlers::HostClassHandler do
parse(puppet_code, :puppet)
comment = "Class: foo::bar\nThis class does some stuff"
comment = "Class: foo::bar\n\nThis class does some stuff"
expect(the_hostclass).to document_a(:type => :hostclass, :docstring => comment)
end