Class: RDoc::TestCase
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
MiniTest::Unit::TestCase
|
|
Instance Chain:
self,
MiniTest::Unit::TestCase
|
|
Inherits: |
MiniTest::Unit::TestCase
|
Defined in: | lib/rdoc/test_case.rb |
Overview
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 Markup (for less typing) -
@pwd
containing the current working directory -
FileUtils, pp, Tempfile,
Dir.tmpdir
and StringIO
Instance Method Summary
-
#assert_directory(path)
Asserts
path
is a directory. -
#assert_file(path)
Asserts
path
is a file. -
#blank_line
Shortcut for Markup::BlankLine.new
-
#block(*contents)
Shortcut for
RDoc::Markup::BlockQuote.new
withcontents
-
#comment(text, top_level = @top_level)
Creates an Comment with
text
which was defined ontop_level
. -
#doc(*contents)
Shortcut for Markup::Document.new with
contents
-
#hard_break
Shortcut for Markup::HardBreak.new
-
#head(level, text)
Shortcut for
RDoc::Markup::Heading.new
withlevel
andtext
-
#item(label = nil, *parts)
Shortcut for Markup::ListItem.new with
label
andparts
-
#list(type = nil, *items)
Shortcut for Markup::List.new with
type
anditems
-
#para(*a)
Shortcut for
RDoc::Markup::Paragraph.new
withcontents
-
#raw(*contents)
Shortcut for Markup::Raw.new with
contents
-
#refute_file(path)
Refutes
path
exists. -
#rule(weight)
Shortcut for
RDoc::Markup::Rule.new
withweight
-
#setup
Abstract test-case setup.
-
#temp_dir
Creates a temporary directory changes the current directory to it for the duration of the block.
-
#verb(*parts)
Shortcut for Markup::Verbatim.new with
parts
-
#verbose_capture_io
run capture_io with setting $VERBOSE = true.
Instance Method Details
#assert_directory(path)
Asserts path
is a directory
# File 'lib/rdoc/test_case.rb', line 74
def assert_directory path assert File.directory?(path), "#{path} is not a directory" end
#assert_file(path)
Asserts path
is a file
# File 'lib/rdoc/test_case.rb', line 67
def assert_file path assert File.file?(path), "#{path} is not a file" end
#blank_line
Shortcut for Markup::BlankLine.new
# File 'lib/rdoc/test_case.rb', line 88
def blank_line @RM::BlankLine.new end
#block(*contents)
Shortcut for RDoc::Markup::BlockQuote.new
with contents
# File 'lib/rdoc/test_case.rb', line 95
def block *contents @RM::BlockQuote.new(*contents) end
#comment(text, top_level = @top_level)
Creates an Comment with text
which was defined on top_level
. By default the comment has the 'rdoc' format.
#doc(*contents)
Shortcut for Markup::Document.new with contents
# File 'lib/rdoc/test_case.rb', line 110
def doc *contents @RM::Document.new(*contents) end
#hard_break
Shortcut for Markup::HardBreak.new
# File 'lib/rdoc/test_case.rb', line 117
def hard_break @RM::HardBreak.new end
#head(level, text)
Shortcut for RDoc::Markup::Heading.new
with level
and text
# File 'lib/rdoc/test_case.rb', line 124
def head level, text @RM::Heading.new level, text end
#item(label = nil, *parts)
Shortcut for Markup::ListItem.new with label
and parts
# File 'lib/rdoc/test_case.rb', line 131
def item label = nil, *parts @RM::ListItem.new label, *parts end
#list(type = nil, *items)
Shortcut for Markup::List.new with type
and items
# File 'lib/rdoc/test_case.rb', line 138
def list type = nil, *items @RM::List.new type, *items end
#para(*a)
Shortcut for RDoc::Markup::Paragraph.new
with contents
# File 'lib/rdoc/test_case.rb', line 155
def para *a @RM::Paragraph.new(*a) end
#raw(*contents)
Shortcut for Markup::Raw.new with contents
# File 'lib/rdoc/test_case.rb', line 169
def raw *contents @RM::Raw.new(*contents) end
#refute_file(path)
Refutes path
exists
# File 'lib/rdoc/test_case.rb', line 81
def refute_file path refute File.exist?(path), "#{path} exists" end
#rule(weight)
Shortcut for RDoc::Markup::Rule.new
with weight
# File 'lib/rdoc/test_case.rb', line 162
def rule weight @RM::Rule.new weight end
#setup
Abstract test-case setup
# File 'lib/rdoc/test_case.rb', line 39
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 @rdoc. = RDoc::Options.new g = Object.new def g.class_dir() end def g.file_dir() end @rdoc.generator = g end
#temp_dir
Creates a temporary directory changes the current directory to it for the duration of the block.
Depends upon Dir.mktmpdir
# File 'lib/rdoc/test_case.rb', line 179
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
#verb(*parts)
Shortcut for Markup::Verbatim.new with parts
# File 'lib/rdoc/test_case.rb', line 192
def verb *parts @RM::Verbatim.new(*parts) end
#verbose_capture_io
run capture_io with setting $VERBOSE = true
# File 'lib/rdoc/test_case.rb', line 199
def verbose_capture_io capture_io do begin orig_verbose = $VERBOSE $VERBOSE = true yield ensure $VERBOSE = orig_verbose end end end