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 73
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 66
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 87
def blank_line @RM::BlankLine.new end
#block(*contents)
Shortcut for RDoc::Markup::BlockQuote.new
with contents
# File 'lib/rdoc/test_case.rb', line 94
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 109
def doc *contents @RM::Document.new(*contents) end
#hard_break
Shortcut for Markup::HardBreak.new
# File 'lib/rdoc/test_case.rb', line 116
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 123
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 130
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 137
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 154
def para *a @RM::Paragraph.new(*a) end
#raw(*contents)
Shortcut for Markup::Raw.new with contents
# File 'lib/rdoc/test_case.rb', line 168
def raw *contents @RM::Raw.new(*contents) end
#refute_file(path)
Refutes path
exists
# File 'lib/rdoc/test_case.rb', line 80
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 161
def rule weight @RM::Rule.new weight end
#setup
Abstract test-case setup
# File 'lib/rdoc/test_case.rb', line 38
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 178
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 191
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 198
def verbose_capture_io capture_io do begin orig_verbose = $VERBOSE $VERBOSE = true yield ensure $VERBOSE = orig_verbose end end end