Class: RDoc::TestCase
- Inherits:
-
MiniTest::Unit::TestCase
- Object
- MiniTest::Unit::TestCase
- RDoc::TestCase
- Defined in:
- lib/rdoc/test_case.rb
Overview
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
Direct Known Subclasses
Instance Method Summary collapse
-
#assert_directory(path) ⇒ Object
Asserts
path
is a directory. -
#assert_file(path) ⇒ Object
Asserts
path
is a file. -
#blank_line ⇒ Object
Shortcut for RDoc::Markup::BlankLine.new.
-
#block(*contents) ⇒ Object
Shortcut for RDoc::Markup::BlockQuote.new with
contents
. -
#comment(text, top_level = @top_level) ⇒ Object
Creates an RDoc::Comment with
text
which was defined ontop_level
. -
#doc(*contents) ⇒ Object
Shortcut for RDoc::Markup::Document.new with
contents
. -
#hard_break ⇒ Object
Shortcut for RDoc::Markup::HardBreak.new.
-
#head(level, text) ⇒ Object
Shortcut for RDoc::Markup::Heading.new with
level
andtext
. -
#item(label = nil, *parts) ⇒ Object
Shortcut for RDoc::Markup::ListItem.new with
label
andparts
. -
#list(type = nil, *items) ⇒ Object
Shortcut for RDoc::Markup::List.new with
type
anditems
. -
#mu_pp(obj) ⇒ Object
Enables pretty-print output.
-
#para(*a) ⇒ Object
Shortcut for RDoc::Markup::Paragraph.new with
contents
. -
#raw(*contents) ⇒ Object
Shortcut for RDoc::Markup::Raw.new with
contents
. -
#refute_file(path) ⇒ Object
Refutes
path
exists. -
#rule(weight) ⇒ Object
Shortcut for RDoc::Markup::Rule.new with
weight
. -
#setup ⇒ Object
Abstract test-case setup.
-
#temp_dir ⇒ Object
Creates a temporary directory changes the current directory to it for the duration of the block.
-
#verb(*parts) ⇒ Object
Shortcut for RDoc::Markup::Verbatim.new with
parts
. -
#verbose_capture_io ⇒ Object
run capture_io with setting $VERBOSE = true.
Instance Method Details
#assert_directory(path) ⇒ Object
Asserts path
is a directory
70 71 72 |
# File 'lib/rdoc/test_case.rb', line 70 def assert_directory path assert File.directory?(path), "#{path} is not a directory" end |
#assert_file(path) ⇒ Object
Asserts path
is a file
63 64 65 |
# File 'lib/rdoc/test_case.rb', line 63 def assert_file path assert File.file?(path), "#{path} is not a file" end |
#blank_line ⇒ Object
Shortcut for RDoc::Markup::BlankLine.new
84 85 86 |
# File 'lib/rdoc/test_case.rb', line 84 def blank_line @RM::BlankLine.new end |
#block(*contents) ⇒ Object
Shortcut for RDoc::Markup::BlockQuote.new with contents
91 92 93 |
# File 'lib/rdoc/test_case.rb', line 91 def block *contents @RM::BlockQuote.new(*contents) end |
#comment(text, top_level = @top_level) ⇒ Object
Creates an RDoc::Comment with text
which was defined on top_level
. By default the comment has the ‘rdoc’ format.
99 100 101 |
# File 'lib/rdoc/test_case.rb', line 99 def comment text, top_level = @top_level RDoc::Comment.new text, top_level end |
#doc(*contents) ⇒ Object
Shortcut for RDoc::Markup::Document.new with contents
106 107 108 |
# File 'lib/rdoc/test_case.rb', line 106 def doc *contents @RM::Document.new(*contents) end |
#hard_break ⇒ Object
Shortcut for RDoc::Markup::HardBreak.new
113 114 115 |
# File 'lib/rdoc/test_case.rb', line 113 def hard_break @RM::HardBreak.new end |
#head(level, text) ⇒ Object
Shortcut for RDoc::Markup::Heading.new with level
and text
120 121 122 |
# File 'lib/rdoc/test_case.rb', line 120 def head level, text @RM::Heading.new level, text end |
#item(label = nil, *parts) ⇒ Object
Shortcut for RDoc::Markup::ListItem.new with label
and parts
127 128 129 |
# File 'lib/rdoc/test_case.rb', line 127 def item label = nil, *parts @RM::ListItem.new label, *parts end |
#list(type = nil, *items) ⇒ Object
Shortcut for RDoc::Markup::List.new with type
and items
134 135 136 |
# File 'lib/rdoc/test_case.rb', line 134 def list type = nil, *items @RM::List.new type, *items end |
#mu_pp(obj) ⇒ Object
Enables pretty-print output
141 142 143 144 145 |
# File 'lib/rdoc/test_case.rb', line 141 def mu_pp obj # :nodoc: s = obj.pretty_inspect s = RDoc::Encoding.change_encoding s, Encoding.default_external s.chomp end |
#para(*a) ⇒ Object
Shortcut for RDoc::Markup::Paragraph.new with contents
150 151 152 |
# File 'lib/rdoc/test_case.rb', line 150 def para *a @RM::Paragraph.new(*a) end |
#raw(*contents) ⇒ Object
Shortcut for RDoc::Markup::Raw.new with contents
164 165 166 |
# File 'lib/rdoc/test_case.rb', line 164 def raw *contents @RM::Raw.new(*contents) end |
#refute_file(path) ⇒ Object
Refutes path
exists
77 78 79 |
# File 'lib/rdoc/test_case.rb', line 77 def refute_file path refute File.exist?(path), "#{path} exists" end |
#rule(weight) ⇒ Object
Shortcut for RDoc::Markup::Rule.new with weight
157 158 159 |
# File 'lib/rdoc/test_case.rb', line 157 def rule weight @RM::Rule.new weight end |
#setup ⇒ Object
Abstract test-case setup
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/rdoc/test_case.rb', line 37 def setup super @top_level = nil @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 ⇒ Object
Creates a temporary directory changes the current directory to it for the duration of the block.
Depends upon Dir.mktmpdir
174 175 176 177 178 179 180 |
# File 'lib/rdoc/test_case.rb', line 174 def temp_dir Dir.mktmpdir do |temp_dir| Dir.chdir temp_dir do yield temp_dir end end end |
#verb(*parts) ⇒ Object
Shortcut for RDoc::Markup::Verbatim.new with parts
185 186 187 |
# File 'lib/rdoc/test_case.rb', line 185 def verb *parts @RM::Verbatim.new(*parts) end |
#verbose_capture_io ⇒ Object
run capture_io with setting $VERBOSE = true
192 193 194 195 196 197 198 199 200 201 202 |
# File 'lib/rdoc/test_case.rb', line 192 def verbose_capture_io capture_io do begin orig_verbose = $VERBOSE $VERBOSE = true yield ensure $VERBOSE = orig_verbose end end end |