* io.c (rb_open_file): encoding in mode string was ignored if perm is
[ruby-svn.git] / test / rdoc / test_rdoc_ri_overstrike_formatter.rb
blob050e92a4fea349df3af35da8e8386179862cedfc
1 require 'stringio'
2 require 'test/unit'
3 require 'rdoc/ri/formatter'
4 require 'rdoc/markup/fragments'
5 require 'rdoc/markup/to_flow'
7 class TestRDocRIOverstrikeFormatter < Test::Unit::TestCase
9   def setup
10     @output = StringIO.new
11     @width = 78
12     @indent = '  '
14     @f = RDoc::RI::OverstrikeFormatter.new @output, @width, @indent
15     @markup = RDoc::Markup.new
16     @flow = RDoc::Markup::ToFlow.new
18     @af = RDoc::RI::AttributeFormatter
19   end
21   def test_display_verbatim_flow_item_bold
22     verbatim = RDoc::Markup::Flow::VERB.new "*a* b c"
24     @f.display_verbatim_flow_item verbatim
26     assert_equal "  *a* b c\n\n", @output.string
27   end
29   def test_write_attribute_text_bold
30     line = [RDoc::RI::AttributeFormatter::AttrChar.new('b', @af::BOLD)]
32     @f.write_attribute_text '  ', line
34     assert_equal "  b\bb\n", @output.string
35   end
37   def test_write_attribute_text_bold_italic
38     attr = @af::BOLD | @af::ITALIC
39     line = [RDoc::RI::AttributeFormatter::AttrChar.new('d', attr)]
41     @f.write_attribute_text '  ', line
43     assert_equal "  _\bd\bd\n", @output.string
44   end
46   def test_write_attribute_text_code
47     line = [RDoc::RI::AttributeFormatter::AttrChar.new('c', @af::CODE)]
49     @f.write_attribute_text '  ', line
51     assert_equal "  _\bc\n", @output.string
52   end
54   def test_write_attribute_text_italic
55     line = [RDoc::RI::AttributeFormatter::AttrChar.new('a', @af::ITALIC)]
57     @f.write_attribute_text '  ', line
59     assert_equal "  _\ba\n", @output.string
60   end
62   def test_bold_print
63     @f.bold_print 'a b c'
65     assert_equal "a\ba \b b\bb \b c\bc", @output.string
66   end
68 end