Class: RDoc::Markup::TextFormatterTestCase

Inherits:
FormatterTestCase show all
Defined in:
lib/rdoc/markup/text_formatter_test_case.rb

Overview

Test case for creating new plain-text RDoc::Markup formatters. See also RDoc::Markup::FormatterTestCase

See test_rdoc_markup_to_rdoc.rb for a complete example.

Example:

class TestRDocMarkupToNewTextFormat < RDoc::Markup::TextFormatterTestCase

  add_visitor_tests
  add_text_tests

  def setup
    super

    @to = RDoc::Markup::ToNewTextFormat.new
  end

  def accept_blank_line
    assert_equal :junk, @to.res.join
  end

  # ...

end

Constant Summary

Constant Summary

Constants inherited from MiniTest::Unit::TestCase

MiniTest::Unit::TestCase::PASSTHROUGH_EXCEPTIONS, MiniTest::Unit::TestCase::SUPPORTS_INFO_SIGNAL

Instance Attribute Summary

Attributes inherited from MiniTest::Unit::TestCase

#__name__

Class Method Summary (collapse)

Methods inherited from FormatterTestCase

add_visitor_tests, #setup

Methods inherited from MiniTest::Unit::TestCase

inherited, #initialize, #passed?, reset, #run, #setup, #teardown, test_methods, test_order, test_suites

Methods included from MiniTest::Assertions

#_assertions, #_assertions=, #assert, #assert_block, #assert_empty, #assert_equal, #assert_in_delta, #assert_in_epsilon, #assert_includes, #assert_instance_of, #assert_kind_of, #assert_match, #assert_nil, #assert_operator, #assert_raises, #assert_respond_to, #assert_same, #assert_send, #assert_throws, #capture_io, #exception_details, #flunk, #message, #mu_pp, #pass, #refute, #refute_empty, #refute_equal, #refute_in_delta, #refute_in_epsilon, #refute_includes, #refute_instance_of, #refute_kind_of, #refute_match, #refute_nil, #refute_operator, #refute_respond_to, #refute_same, #skip

Constructor Details

This class inherits a constructor from MiniTest::Unit::TestCase

Class Method Details

+ (Object) add_text_tests

Adds test cases to the calling TestCase.



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'lib/rdoc/markup/text_formatter_test_case.rb', line 35

def self.add_text_tests
  self.class_eval do

    ##
    # Test case that calls <tt>@to.accept_heading</tt>

    def test_accept_heading_indent
      @to.start_accepting
      @to.indent = 3
      @to.accept_heading @RM::Heading.new(1, 'Hello')

      accept_heading_indent
    end

    ##
    # Test case that calls <tt>@to.accept_rule</tt>

    def test_accept_rule_indent
      @to.start_accepting
      @to.indent = 3
      @to.accept_rule @RM::Rule.new(1)

      accept_rule_indent
    end

    ##
    # Test case that calls <tt>@to.accept_verbatim</tt>

    def test_accept_verbatim_indent
      @to.start_accepting
      @to.indent = 2
      @to.accept_verbatim @RM::Verbatim.new("hi\n", " world\n")

      accept_verbatim_indent
    end

    ##
    # Test case that calls <tt>@to.accept_verbatim</tt> with a big indent

    def test_accept_verbatim_big_indent
      @to.start_accepting
      @to.indent = 2
      @to.accept_verbatim @RM::Verbatim.new("hi\n", "world\n")

      accept_verbatim_big_indent
    end

    ##
    # Test case that calls <tt>@to.accept_paragraph</tt> with an indent

    def test_accept_paragraph_indent
      @to.start_accepting
      @to.indent = 3
      @to.accept_paragraph @RM::Paragraph.new(('words ' * 30).strip)

      accept_paragraph_indent
    end

    ##
    # Test case that calls <tt>@to.accept_paragraph</tt> with a long line

    def test_accept_paragraph_wrap
      @to.start_accepting
      @to.accept_paragraph @RM::Paragraph.new(('words ' * 30).strip)

      accept_paragraph_wrap
    end

    ##
    # Test case that calls <tt>@to.attributes</tt> with an escaped
    # cross-reference.  If this test doesn't pass something may be very
    # wrong.

    def test_attributes
      assert_equal 'Dog', @to.attributes("\\Dog")
    end

  end
end