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
@RMalias of Markup (for less typing) -
@pwdcontaining the current working directory -
FileUtils, pp, Tempfile,
Dir.tmpdirand StringIO
Instance Method Summary
-
#assert_directory(path)
Asserts
pathis a directory. -
#assert_file(path)
Asserts
pathis a file. -
#blank_line
Shortcut for Markup::BlankLine.new
-
#block(*contents)
Shortcut for
RDoc::Markup::BlockQuote.newwithcontents -
#comment(text, top_level = @top_level)
Creates an Comment with
textwhich 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.newwithlevelandtext -
#item(label = nil, *parts)
Shortcut for Markup::ListItem.new with
labelandparts -
#list(type = nil, *items)
Shortcut for Markup::List.new with
typeanditems -
#para(*a)
Shortcut for
RDoc::Markup::Paragraph.newwithcontents -
#raw(*contents)
Shortcut for Markup::Raw.new with
contents -
#refute_file(path)
Refutes
pathexists. -
#rule(weight)
Shortcut for
RDoc::Markup::Rule.newwithweight -
#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