class RDoc::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:

Public Instance Methods

assert_directory(path) click to toggle source

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) click to toggle source

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() click to toggle source

Shortcut for RDoc::Markup::BlankLine.new

# File lib/rdoc/test_case.rb, line 87
def blank_line
  @RM::BlankLine.new
end
block(*contents) click to toggle source

Shortcut for RDoc::Markup::Raw.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) click to toggle source

Creates an RDoc::Comment with text which was defined on top_level. By default the comment has the 'rdoc' format.

# File lib/rdoc/test_case.rb, line 102
def comment text, top_level = @top_level
  RDoc::Comment.new text, top_level
end
doc(*contents) click to toggle source

Shortcut for RDoc::Markup::Document.new with contents

# File lib/rdoc/test_case.rb, line 109
def doc *contents
  @RM::Document.new(*contents)
end
hard_break() click to toggle source

Shortcut for RDoc::Markup::HardBreak.new

# File lib/rdoc/test_case.rb, line 116
def hard_break
  @RM::HardBreak.new
end
head(level, text) click to toggle source

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) click to toggle source

Shortcut for RDoc::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) click to toggle source

Shortcut for RDoc::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) click to toggle source

Shortcut for RDoc::Markup::Raw.new with contents

# File lib/rdoc/test_case.rb, line 154
def para *a
  @RM::Paragraph.new(*a)
end
raw(*contents) click to toggle source

Shortcut for RDoc::Markup::Raw.new with contents

# File lib/rdoc/test_case.rb, line 168
def raw *contents
  @RM::Raw.new(*contents)
end
refute_file(path) click to toggle source

Refutes path exists

# File lib/rdoc/test_case.rb, line 80
def refute_file path
  refute File.exist?(path), "#{path} exists"
end
rule(weight) click to toggle source

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() click to toggle source

Abstract test-case setup

Calls superclass method MiniTest::Unit::TestCase#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.options = RDoc::Options.new

  g = Object.new
  def g.class_dir() end
  def g.file_dir() end
  @rdoc.generator = g
end
temp_dir() { |temp_dir| ... } click to toggle source

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) click to toggle source

Shortcut for RDoc::Markup::Raw.new with parts

# File lib/rdoc/test_case.rb, line 191
def verb *parts
  @RM::Verbatim.new(*parts)
end
verbose_capture_io() { || ... } click to toggle source

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