Class: RDoc::TestCase (Ruby 2.3.4)

In Files

  • rdoc/test_case.rb

Class/Module Index [+]

Quicksearch

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:

  • 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

Public Instance Methods

assert_directory(path)

Asserts path is a directory

 
               # File 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 rdoc/test_case.rb, line 67
def assert_file path
  assert File.file?(path), "#{path} is not a file"
end
            
blank_line()

Shortcut for RDoc::Markup::BlankLine.new

 
               # File rdoc/test_case.rb, line 88
def blank_line
  @RM::BlankLine.new
end
            
block(*contents)

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

 
               # File rdoc/test_case.rb, line 95
def block *contents
  @RM::BlockQuote.new(*contents)
end
            
comment(text, top_level = @top_level)

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

 
               # File rdoc/test_case.rb, line 103
def comment text, top_level = @top_level
  RDoc::Comment.new text, top_level
end
            
doc(*contents)

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

 
               # File rdoc/test_case.rb, line 110
def doc *contents
  @RM::Document.new(*contents)
end
            
hard_break()

Shortcut for RDoc::Markup::HardBreak.new

 
               # File 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 rdoc/test_case.rb, line 124
def head level, text
  @RM::Heading.new level, text
end
            
item(label = nil, *parts)

Shortcut for RDoc::Markup::ListItem.new with label and parts

 
               # File rdoc/test_case.rb, line 131
def item label = nil, *parts
  @RM::ListItem.new label, *parts
end
            
list(type = nil, *items)

Shortcut for RDoc::Markup::List.new with type and items

 
               # File rdoc/test_case.rb, line 138
def list type = nil, *items
  @RM::List.new type, *items
end
            
para(*a)

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

 
               # File rdoc/test_case.rb, line 155
def para *a
  @RM::Paragraph.new(*a)
end
            
raw(*contents)

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

 
               # File rdoc/test_case.rb, line 169
def raw *contents
  @RM::Raw.new(*contents)
end
            
refute_file(path)

Refutes path exists

 
               # File 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 rdoc/test_case.rb, line 162
def rule weight
  @RM::Rule.new weight
end
            
setup()

Abstract test-case setup

 
               # File 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.options = 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 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 RDoc::Markup::Raw.new with parts

 
               # File 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 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