MiniTest::Unit::TestCase
RDoc::TestCase is an abstract TestCase to provide common setup and teardown across all RDoc tests. The test case uses minitest, so all the assertions of minitest may be used.
The testcase provides the following:
A reset code-object tree
A reset markup preprocessor (RDoc::Markup::PreProcess)
The @RM alias of RDoc::Markup (for
less typing)
@pwd containing the current working directory
FileUtils, pp, Tempfile, Dir.tmpdir and StringIO
Shortcut for RDoc::Markup::BlankLine.new
# File rdoc/test_case.rb, line 58
def blank_line
@RM::BlankLine.new
end
Shortcut for RDoc::Markup::Raw.new with
contents
# File rdoc/test_case.rb, line 65
def block *contents
@RM::BlockQuote.new(*contents)
end
Shortcut for RDoc::Markup::Document.new
with contents
# File rdoc/test_case.rb, line 80
def doc *contents
@RM::Document.new(*contents)
end
Shortcut for RDoc::Markup::HardBreak.new
# File rdoc/test_case.rb, line 87
def hard_break
@RM::HardBreak.new
end
Shortcut for RDoc::Markup::Heading.new with level and
text
# File rdoc/test_case.rb, line 94
def head level, text
@RM::Heading.new level, text
end
Shortcut for RDoc::Markup::ListItem.new
with label and parts
# File rdoc/test_case.rb, line 101
def item label = nil, *parts
@RM::ListItem.new label, *parts
end
Shortcut for RDoc::Markup::List.new with
type and items
# File rdoc/test_case.rb, line 108
def list type = nil, *items
@RM::List.new type, *items
end
Shortcut for RDoc::Markup::Raw.new with
contents
# File rdoc/test_case.rb, line 115
def para *a
@RM::Paragraph.new(*a)
end
Shortcut for RDoc::Markup::Raw.new with
contents
# File rdoc/test_case.rb, line 129
def raw *contents
@RM::Raw.new(*contents)
end
Shortcut for RDoc::Markup::Rule.new with weight
# File rdoc/test_case.rb, line 122
def rule weight
@RM::Rule.new weight
end
Abstract test-case setup
# File rdoc/test_case.rb, line 31
def setup
super
@top_level = nil
@have_encoding = Object.const_defined? :Encoding
@RM = RDoc::Markup
RDoc::Markup::PreProcess.reset
@pwd = Dir.pwd
@store = RDoc::Store.new
@rdoc = RDoc::RDoc.new
@rdoc.store = @store
g = Object.new
def g.class_dir() end
def g.file_dir() end
@rdoc.generator = g
end
Creates a temporary directory changes the current directory to it for the duration of the block.
Depends upon Dir.mktmpdir
# File rdoc/test_case.rb, line 139
def temp_dir
skip "No Dir::mktmpdir, upgrade your ruby" unless Dir.respond_to? :mktmpdir
Dir.mktmpdir do |temp_dir|
Dir.chdir temp_dir do
yield temp_dir
end
end
end
Shortcut for RDoc::Markup::Raw.new with
parts
# File rdoc/test_case.rb, line 152
def verb *parts
@RM::Verbatim.new(*parts)
end
Creates an RDoc::Comment with
textwhich was defined ontop_level. By default the comment has the ‘rdoc’ format.# File rdoc/test_case.rb, line 73 def comment text, top_level = @top_level RDoc::Comment.new text, top_level end