rdoc 4.2.1 → 6.3.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of rdoc might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/CONTRIBUTING.rdoc +8 -7
- data/Gemfile +12 -0
- data/History.rdoc +48 -4
- data/LEGAL.rdoc +2 -2
- data/README.rdoc +5 -5
- data/Rakefile +73 -155
- data/bin/console +7 -0
- data/bin/setup +6 -0
- data/{bin → exe}/rdoc +0 -0
- data/{bin → exe}/ri +0 -0
- data/lib/rdoc/alias.rb +1 -0
- data/lib/rdoc/anon_class.rb +1 -0
- data/lib/rdoc/any_method.rb +59 -14
- data/lib/rdoc/attr.rb +1 -0
- data/lib/rdoc/class_module.rb +5 -2
- data/lib/rdoc/code_object.rb +3 -11
- data/lib/rdoc/code_objects.rb +1 -0
- data/lib/rdoc/comment.rb +32 -11
- data/lib/rdoc/constant.rb +3 -2
- data/lib/rdoc/context/section.rb +7 -13
- data/lib/rdoc/context.rb +78 -23
- data/lib/rdoc/cross_reference.rb +33 -14
- data/lib/rdoc/encoding.rb +92 -55
- data/lib/rdoc/erb_partial.rb +2 -1
- data/lib/rdoc/erbio.rb +8 -3
- data/lib/rdoc/extend.rb +1 -0
- data/lib/rdoc/generator/darkfish.rb +62 -32
- data/lib/rdoc/generator/json_index.rb +8 -5
- data/lib/rdoc/generator/markup.rb +3 -12
- data/lib/rdoc/generator/pot/message_extractor.rb +68 -0
- data/lib/rdoc/generator/pot/po.rb +84 -0
- data/lib/rdoc/generator/pot/po_entry.rb +141 -0
- data/lib/rdoc/generator/pot.rb +4 -3
- data/lib/rdoc/generator/ri.rb +1 -0
- data/lib/rdoc/generator/template/darkfish/_footer.rhtml +2 -2
- data/lib/rdoc/generator/template/darkfish/_head.rhtml +11 -8
- data/lib/rdoc/generator/template/darkfish/_sidebar_VCS_info.rhtml +2 -2
- data/lib/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +2 -2
- data/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +7 -7
- data/lib/rdoc/generator/template/darkfish/_sidebar_in_files.rhtml +2 -2
- data/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +7 -7
- data/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +6 -6
- data/lib/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +5 -5
- data/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +5 -5
- data/lib/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +5 -5
- data/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +4 -4
- data/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +4 -4
- data/lib/rdoc/generator/template/darkfish/class.rhtml +45 -47
- data/lib/rdoc/generator/template/darkfish/css/fonts.css +6 -6
- data/lib/rdoc/generator/template/darkfish/css/rdoc.css +55 -6
- data/lib/rdoc/generator/template/darkfish/index.rhtml +3 -4
- data/lib/rdoc/generator/template/darkfish/js/darkfish.js +23 -100
- data/lib/rdoc/generator/template/darkfish/js/search.js +32 -31
- data/lib/rdoc/generator/template/darkfish/servlet_root.rhtml +15 -16
- data/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +16 -16
- data/lib/rdoc/generator/template/json_index/js/navigation.js +4 -41
- data/lib/rdoc/generator/template/json_index/js/searcher.js +7 -6
- data/lib/rdoc/generator.rb +1 -1
- data/lib/rdoc/ghost_method.rb +1 -0
- data/lib/rdoc/i18n/locale.rb +2 -1
- data/lib/rdoc/i18n/text.rb +5 -4
- data/lib/rdoc/i18n.rb +3 -2
- data/lib/rdoc/include.rb +1 -0
- data/lib/rdoc/known_classes.rb +1 -0
- data/lib/rdoc/markdown/entities.rb +1 -0
- data/lib/rdoc/markdown/{literals_1_9.kpeg → literals.kpeg} +1 -0
- data/lib/rdoc/markdown/{literals_1_9.rb → literals.rb} +1 -4
- data/lib/rdoc/markdown.kpeg +94 -51
- data/lib/rdoc/markdown.rb +1171 -619
- data/lib/rdoc/markup/attr_changer.rb +1 -0
- data/lib/rdoc/markup/attr_span.rb +9 -2
- data/lib/rdoc/markup/attribute_manager.rb +115 -49
- data/lib/rdoc/markup/attributes.rb +7 -6
- data/lib/rdoc/markup/blank_line.rb +1 -0
- data/lib/rdoc/markup/block_quote.rb +1 -0
- data/lib/rdoc/markup/document.rb +1 -0
- data/lib/rdoc/markup/formatter.rb +25 -23
- data/lib/rdoc/markup/hard_break.rb +1 -0
- data/lib/rdoc/markup/heading.rb +4 -3
- data/lib/rdoc/markup/include.rb +1 -0
- data/lib/rdoc/markup/indented_paragraph.rb +1 -0
- data/lib/rdoc/markup/list.rb +1 -0
- data/lib/rdoc/markup/list_item.rb +1 -0
- data/lib/rdoc/markup/paragraph.rb +1 -0
- data/lib/rdoc/markup/parser.rb +78 -61
- data/lib/rdoc/markup/pre_process.rb +12 -9
- data/lib/rdoc/markup/raw.rb +1 -0
- data/lib/rdoc/markup/regexp_handling.rb +41 -0
- data/lib/rdoc/markup/rule.rb +1 -0
- data/lib/rdoc/markup/to_ansi.rb +1 -0
- data/lib/rdoc/markup/to_bs.rb +4 -5
- data/lib/rdoc/markup/to_html.rb +71 -25
- data/lib/rdoc/markup/to_html_crossref.rb +41 -25
- data/lib/rdoc/markup/to_html_snippet.rb +10 -9
- data/lib/rdoc/markup/to_joined_paragraph.rb +7 -31
- data/lib/rdoc/markup/to_label.rb +10 -9
- data/lib/rdoc/markup/to_markdown.rb +9 -8
- data/lib/rdoc/markup/to_rdoc.rb +35 -6
- data/lib/rdoc/markup/to_table_of_contents.rb +2 -0
- data/lib/rdoc/markup/to_test.rb +1 -0
- data/lib/rdoc/markup/to_tt_only.rb +3 -2
- data/lib/rdoc/markup/verbatim.rb +1 -0
- data/lib/rdoc/markup.rb +14 -16
- data/lib/rdoc/meta_method.rb +1 -0
- data/lib/rdoc/method_attr.rb +2 -1
- data/lib/rdoc/mixin.rb +1 -0
- data/lib/rdoc/normal_class.rb +3 -2
- data/lib/rdoc/normal_module.rb +1 -0
- data/lib/rdoc/options.rb +92 -58
- data/lib/rdoc/parser/c.rb +219 -223
- data/lib/rdoc/parser/changelog.rb +155 -18
- data/lib/rdoc/parser/markdown.rb +1 -0
- data/lib/rdoc/parser/rd.rb +1 -0
- data/lib/rdoc/parser/ripper_state_lex.rb +590 -0
- data/lib/rdoc/parser/ruby.rb +635 -468
- data/lib/rdoc/parser/ruby_tools.rb +33 -33
- data/lib/rdoc/parser/simple.rb +3 -3
- data/lib/rdoc/parser/text.rb +1 -0
- data/lib/rdoc/parser.rb +17 -50
- data/lib/rdoc/rd/block_parser.rb +66 -65
- data/lib/rdoc/rd/block_parser.ry +3 -3
- data/lib/rdoc/rd/inline.rb +5 -4
- data/lib/rdoc/rd/inline_parser.rb +52 -51
- data/lib/rdoc/rd/inline_parser.ry +1 -1
- data/lib/rdoc/rd.rb +1 -0
- data/lib/rdoc/rdoc.rb +68 -63
- data/lib/rdoc/require.rb +1 -0
- data/lib/rdoc/ri/driver.rb +133 -58
- data/lib/rdoc/ri/formatter.rb +1 -0
- data/lib/rdoc/ri/paths.rb +4 -20
- data/lib/rdoc/ri/store.rb +1 -0
- data/lib/rdoc/ri/task.rb +71 -0
- data/lib/rdoc/ri.rb +1 -0
- data/lib/rdoc/rubygems_hook.rb +5 -12
- data/lib/rdoc/servlet.rb +24 -14
- data/lib/rdoc/single_class.rb +1 -0
- data/lib/rdoc/stats/normal.rb +20 -21
- data/lib/rdoc/stats/quiet.rb +1 -0
- data/lib/rdoc/stats/verbose.rb +1 -0
- data/lib/rdoc/stats.rb +1 -0
- data/lib/rdoc/store.rb +41 -41
- data/lib/rdoc/task.rb +2 -3
- data/lib/rdoc/text.rb +19 -38
- data/lib/rdoc/token_stream.rb +56 -32
- data/lib/rdoc/tom_doc.rb +17 -11
- data/lib/rdoc/top_level.rb +9 -2
- data/lib/rdoc/version.rb +8 -0
- data/lib/rdoc.rb +24 -10
- data/man/ri.1 +247 -0
- data/rdoc.gemspec +248 -0
- metadata +43 -236
- data/.autotest +0 -24
- data/.document +0 -5
- data/Manifest.txt +0 -306
- data/lib/gauntlet_rdoc.rb +0 -84
- data/lib/rdoc/generator/template/darkfish/js/jquery.js +0 -4
- data/lib/rdoc/markdown/literals_1_8.kpeg +0 -18
- data/lib/rdoc/markdown/literals_1_8.rb +0 -416
- data/lib/rdoc/markup/formatter_test_case.rb +0 -767
- data/lib/rdoc/markup/inline.rb +0 -1
- data/lib/rdoc/markup/special.rb +0 -40
- data/lib/rdoc/markup/text_formatter_test_case.rb +0 -114
- data/lib/rdoc/ruby_lex.rb +0 -1377
- data/lib/rdoc/ruby_token.rb +0 -460
- data/lib/rdoc/test_case.rb +0 -217
- data/test/MarkdownTest_1.0.3/Amps and angle encoding.text +0 -21
- data/test/MarkdownTest_1.0.3/Auto links.text +0 -13
- data/test/MarkdownTest_1.0.3/Backslash escapes.text +0 -120
- data/test/MarkdownTest_1.0.3/Blockquotes with code blocks.text +0 -11
- data/test/MarkdownTest_1.0.3/Code Blocks.text +0 -14
- data/test/MarkdownTest_1.0.3/Code Spans.text +0 -6
- data/test/MarkdownTest_1.0.3/Hard-wrapped paragraphs with list-like lines.text +0 -8
- data/test/MarkdownTest_1.0.3/Horizontal rules.text +0 -67
- data/test/MarkdownTest_1.0.3/Inline HTML (Advanced).text +0 -15
- data/test/MarkdownTest_1.0.3/Inline HTML (Simple).text +0 -69
- data/test/MarkdownTest_1.0.3/Inline HTML comments.text +0 -13
- data/test/MarkdownTest_1.0.3/Links, inline style.text +0 -12
- data/test/MarkdownTest_1.0.3/Links, reference style.text +0 -71
- data/test/MarkdownTest_1.0.3/Links, shortcut references.text +0 -20
- data/test/MarkdownTest_1.0.3/Literal quotes in titles.text +0 -7
- data/test/MarkdownTest_1.0.3/Markdown Documentation - Basics.text +0 -306
- data/test/MarkdownTest_1.0.3/Markdown Documentation - Syntax.text +0 -888
- data/test/MarkdownTest_1.0.3/Nested blockquotes.text +0 -5
- data/test/MarkdownTest_1.0.3/Ordered and unordered lists.text +0 -131
- data/test/MarkdownTest_1.0.3/Strong and em together.text +0 -7
- data/test/MarkdownTest_1.0.3/Tabs.text +0 -21
- data/test/MarkdownTest_1.0.3/Tidyness.text +0 -5
- data/test/README +0 -1
- data/test/binary.dat +0 -0
- data/test/hidden.zip.txt +0 -1
- data/test/test.ja.largedoc +0 -3
- data/test/test.ja.rdoc +0 -10
- data/test/test.ja.txt +0 -8
- data/test/test.txt +0 -1
- data/test/test_rdoc_alias.rb +0 -13
- data/test/test_rdoc_any_method.rb +0 -460
- data/test/test_rdoc_attr.rb +0 -190
- data/test/test_rdoc_class_module.rb +0 -1492
- data/test/test_rdoc_code_object.rb +0 -450
- data/test/test_rdoc_comment.rb +0 -504
- data/test/test_rdoc_constant.rb +0 -181
- data/test/test_rdoc_context.rb +0 -901
- data/test/test_rdoc_context_section.rb +0 -130
- data/test/test_rdoc_cross_reference.rb +0 -192
- data/test/test_rdoc_encoding.rb +0 -227
- data/test/test_rdoc_extend.rb +0 -94
- data/test/test_rdoc_generator_darkfish.rb +0 -229
- data/test/test_rdoc_generator_json_index.rb +0 -324
- data/test/test_rdoc_generator_markup.rb +0 -59
- data/test/test_rdoc_generator_pot.rb +0 -91
- data/test/test_rdoc_generator_pot_po.rb +0 -51
- data/test/test_rdoc_generator_pot_po_entry.rb +0 -139
- data/test/test_rdoc_generator_ri.rb +0 -78
- data/test/test_rdoc_i18n_locale.rb +0 -73
- data/test/test_rdoc_i18n_text.rb +0 -123
- data/test/test_rdoc_include.rb +0 -108
- data/test/test_rdoc_markdown.rb +0 -980
- data/test/test_rdoc_markdown_test.rb +0 -1884
- data/test/test_rdoc_markup.rb +0 -95
- data/test/test_rdoc_markup_attribute_manager.rb +0 -364
- data/test/test_rdoc_markup_attributes.rb +0 -39
- data/test/test_rdoc_markup_document.rb +0 -207
- data/test/test_rdoc_markup_formatter.rb +0 -175
- data/test/test_rdoc_markup_hard_break.rb +0 -31
- data/test/test_rdoc_markup_heading.rb +0 -29
- data/test/test_rdoc_markup_include.rb +0 -19
- data/test/test_rdoc_markup_indented_paragraph.rb +0 -53
- data/test/test_rdoc_markup_paragraph.rb +0 -32
- data/test/test_rdoc_markup_parser.rb +0 -1680
- data/test/test_rdoc_markup_pre_process.rb +0 -473
- data/test/test_rdoc_markup_raw.rb +0 -22
- data/test/test_rdoc_markup_to_ansi.rb +0 -369
- data/test/test_rdoc_markup_to_bs.rb +0 -366
- data/test/test_rdoc_markup_to_html.rb +0 -662
- data/test/test_rdoc_markup_to_html_crossref.rb +0 -225
- data/test/test_rdoc_markup_to_html_snippet.rb +0 -711
- data/test/test_rdoc_markup_to_joined_paragraph.rb +0 -32
- data/test/test_rdoc_markup_to_label.rb +0 -112
- data/test/test_rdoc_markup_to_markdown.rb +0 -389
- data/test/test_rdoc_markup_to_rdoc.rb +0 -377
- data/test/test_rdoc_markup_to_table_of_contents.rb +0 -126
- data/test/test_rdoc_markup_to_tt_only.rb +0 -246
- data/test/test_rdoc_markup_verbatim.rb +0 -29
- data/test/test_rdoc_method_attr.rb +0 -193
- data/test/test_rdoc_normal_class.rb +0 -47
- data/test/test_rdoc_normal_module.rb +0 -42
- data/test/test_rdoc_options.rb +0 -766
- data/test/test_rdoc_parser.rb +0 -327
- data/test/test_rdoc_parser_c.rb +0 -1896
- data/test/test_rdoc_parser_changelog.rb +0 -315
- data/test/test_rdoc_parser_markdown.rb +0 -61
- data/test/test_rdoc_parser_rd.rb +0 -55
- data/test/test_rdoc_parser_ruby.rb +0 -3322
- data/test/test_rdoc_parser_simple.rb +0 -115
- data/test/test_rdoc_rd.rb +0 -30
- data/test/test_rdoc_rd_block_parser.rb +0 -535
- data/test/test_rdoc_rd_inline.rb +0 -63
- data/test/test_rdoc_rd_inline_parser.rb +0 -177
- data/test/test_rdoc_rdoc.rb +0 -455
- data/test/test_rdoc_require.rb +0 -25
- data/test/test_rdoc_ri_driver.rb +0 -1436
- data/test/test_rdoc_ri_paths.rb +0 -155
- data/test/test_rdoc_ruby_lex.rb +0 -421
- data/test/test_rdoc_ruby_token.rb +0 -19
- data/test/test_rdoc_rubygems_hook.rb +0 -251
- data/test/test_rdoc_servlet.rb +0 -534
- data/test/test_rdoc_single_class.rb +0 -20
- data/test/test_rdoc_stats.rb +0 -722
- data/test/test_rdoc_store.rb +0 -993
- data/test/test_rdoc_task.rb +0 -173
- data/test/test_rdoc_text.rb +0 -557
- data/test/test_rdoc_token_stream.rb +0 -42
- data/test/test_rdoc_tom_doc.rb +0 -520
- data/test/test_rdoc_top_level.rb +0 -287
- data/test/xref_data.rb +0 -76
- data/test/xref_test_case.rb +0 -67
@@ -1,229 +0,0 @@
|
|
1
|
-
require 'rdoc/test_case'
|
2
|
-
|
3
|
-
class TestRDocGeneratorDarkfish < RDoc::TestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
super
|
7
|
-
|
8
|
-
@lib_dir = "#{@pwd}/lib"
|
9
|
-
$LOAD_PATH.unshift @lib_dir # ensure we load from this RDoc
|
10
|
-
|
11
|
-
@options = RDoc::Options.new
|
12
|
-
@options.option_parser = OptionParser.new
|
13
|
-
|
14
|
-
@tmpdir = File.join Dir.tmpdir, "test_rdoc_generator_darkfish_#{$$}"
|
15
|
-
FileUtils.mkdir_p @tmpdir
|
16
|
-
Dir.chdir @tmpdir
|
17
|
-
@options.op_dir = @tmpdir
|
18
|
-
@options.generator = RDoc::Generator::Darkfish
|
19
|
-
|
20
|
-
$LOAD_PATH.each do |path|
|
21
|
-
darkfish_dir = File.join path, 'rdoc/generator/template/darkfish/'
|
22
|
-
next unless File.directory? darkfish_dir
|
23
|
-
@options.template_dir = darkfish_dir
|
24
|
-
break
|
25
|
-
end
|
26
|
-
|
27
|
-
@rdoc.options = @options
|
28
|
-
|
29
|
-
@g = @options.generator.new @store, @options
|
30
|
-
@rdoc.generator = @g
|
31
|
-
|
32
|
-
@top_level = @store.add_file 'file.rb'
|
33
|
-
@top_level.parser = RDoc::Parser::Ruby
|
34
|
-
@klass = @top_level.add_class RDoc::NormalClass, 'Klass'
|
35
|
-
|
36
|
-
@alias_constant = RDoc::Constant.new 'A', nil, ''
|
37
|
-
@alias_constant.record_location @top_level
|
38
|
-
|
39
|
-
@top_level.add_constant @alias_constant
|
40
|
-
|
41
|
-
@klass.add_module_alias @klass, 'A', @top_level
|
42
|
-
|
43
|
-
@meth = RDoc::AnyMethod.new nil, 'method'
|
44
|
-
@meth_bang = RDoc::AnyMethod.new nil, 'method!'
|
45
|
-
@attr = RDoc::Attr.new nil, 'attr', 'RW', ''
|
46
|
-
|
47
|
-
@klass.add_method @meth
|
48
|
-
@klass.add_method @meth_bang
|
49
|
-
@klass.add_attribute @attr
|
50
|
-
|
51
|
-
@ignored = @top_level.add_class RDoc::NormalClass, 'Ignored'
|
52
|
-
@ignored.ignore
|
53
|
-
|
54
|
-
@store.complete :private
|
55
|
-
|
56
|
-
@object = @store.find_class_or_module 'Object'
|
57
|
-
@klass_alias = @store.find_class_or_module 'Klass::A'
|
58
|
-
end
|
59
|
-
|
60
|
-
def teardown
|
61
|
-
super
|
62
|
-
|
63
|
-
$LOAD_PATH.shift
|
64
|
-
Dir.chdir @pwd
|
65
|
-
FileUtils.rm_rf @tmpdir
|
66
|
-
end
|
67
|
-
|
68
|
-
def test_generate
|
69
|
-
top_level = @store.add_file 'file.rb'
|
70
|
-
top_level.add_class @klass.class, @klass.name
|
71
|
-
|
72
|
-
@g.generate
|
73
|
-
|
74
|
-
assert_file 'index.html'
|
75
|
-
assert_file 'Object.html'
|
76
|
-
assert_file 'table_of_contents.html'
|
77
|
-
assert_file 'js/search_index.js'
|
78
|
-
|
79
|
-
assert_hard_link 'css/rdoc.css'
|
80
|
-
assert_hard_link 'css/fonts.css'
|
81
|
-
|
82
|
-
assert_hard_link 'fonts/SourceCodePro-Bold.ttf'
|
83
|
-
assert_hard_link 'fonts/SourceCodePro-Regular.ttf'
|
84
|
-
|
85
|
-
encoding = if Object.const_defined? :Encoding then
|
86
|
-
Regexp.escape Encoding::UTF_8.name
|
87
|
-
else
|
88
|
-
Regexp.escape 'UTF-8'
|
89
|
-
end
|
90
|
-
|
91
|
-
assert_match %r%<meta charset="#{encoding}">%, File.read('index.html')
|
92
|
-
assert_match %r%<meta charset="#{encoding}">%, File.read('Object.html')
|
93
|
-
|
94
|
-
refute_match(/Ignored/, File.read('index.html'))
|
95
|
-
end
|
96
|
-
|
97
|
-
def test_generate_dry_run
|
98
|
-
@g.dry_run = true
|
99
|
-
top_level = @store.add_file 'file.rb'
|
100
|
-
top_level.add_class @klass.class, @klass.name
|
101
|
-
|
102
|
-
@g.generate
|
103
|
-
|
104
|
-
refute_file 'index.html'
|
105
|
-
refute_file 'Object.html'
|
106
|
-
end
|
107
|
-
|
108
|
-
def test_generate_static
|
109
|
-
FileUtils.mkdir_p 'dir/images'
|
110
|
-
FileUtils.touch 'dir/images/image.png'
|
111
|
-
FileUtils.mkdir_p 'file'
|
112
|
-
FileUtils.touch 'file/file.txt'
|
113
|
-
|
114
|
-
@options.static_path = [
|
115
|
-
File.expand_path('dir'),
|
116
|
-
File.expand_path('file/file.txt'),
|
117
|
-
]
|
118
|
-
|
119
|
-
@g.generate
|
120
|
-
|
121
|
-
assert_file 'images/image.png'
|
122
|
-
assert_file 'file.txt'
|
123
|
-
end
|
124
|
-
|
125
|
-
def test_generate_static_dry_run
|
126
|
-
FileUtils.mkdir 'static'
|
127
|
-
FileUtils.touch 'static/image.png'
|
128
|
-
|
129
|
-
@options.static_path = [File.expand_path('static')]
|
130
|
-
@g.dry_run = true
|
131
|
-
|
132
|
-
@g.generate
|
133
|
-
|
134
|
-
refute_file 'image.png'
|
135
|
-
end
|
136
|
-
|
137
|
-
def test_install_rdoc_static_file
|
138
|
-
src = Pathname(__FILE__)
|
139
|
-
dst = File.join @tmpdir, File.basename(src)
|
140
|
-
options = {}
|
141
|
-
|
142
|
-
@g.install_rdoc_static_file src, dst, options
|
143
|
-
|
144
|
-
assert_file dst
|
145
|
-
|
146
|
-
begin
|
147
|
-
assert_hard_link dst
|
148
|
-
rescue MiniTest::Assertion
|
149
|
-
return # hard links are not supported, no further tests needed
|
150
|
-
end
|
151
|
-
|
152
|
-
@g.install_rdoc_static_file src, dst, options
|
153
|
-
|
154
|
-
assert_hard_link dst
|
155
|
-
end
|
156
|
-
|
157
|
-
def test_install_rdoc_static_file_missing
|
158
|
-
src = Pathname(__FILE__) + 'nonexistent'
|
159
|
-
dst = File.join @tmpdir, File.basename(src)
|
160
|
-
options = {}
|
161
|
-
|
162
|
-
@g.install_rdoc_static_file src, dst, options
|
163
|
-
|
164
|
-
refute_file dst
|
165
|
-
end
|
166
|
-
|
167
|
-
def test_setup
|
168
|
-
@g.setup
|
169
|
-
|
170
|
-
assert_equal [@klass_alias, @ignored, @klass, @object],
|
171
|
-
@g.classes.sort_by { |klass| klass.full_name }
|
172
|
-
assert_equal [@top_level], @g.files
|
173
|
-
assert_equal [@meth, @meth, @meth_bang, @meth_bang], @g.methods
|
174
|
-
assert_equal [@klass_alias, @klass, @object], @g.modsort
|
175
|
-
end
|
176
|
-
|
177
|
-
def test_template_for
|
178
|
-
classpage = Pathname.new @options.template_dir + 'class.rhtml'
|
179
|
-
|
180
|
-
template = @g.send(:template_for, classpage, true, RDoc::ERBIO)
|
181
|
-
assert_kind_of RDoc::ERBIO, template
|
182
|
-
|
183
|
-
assert_same template, @g.send(:template_for, classpage)
|
184
|
-
end
|
185
|
-
|
186
|
-
def test_template_for_dry_run
|
187
|
-
classpage = Pathname.new @options.template_dir + 'class.rhtml'
|
188
|
-
|
189
|
-
template = @g.send(:template_for, classpage, true, ERB)
|
190
|
-
assert_kind_of ERB, template
|
191
|
-
|
192
|
-
assert_same template, @g.send(:template_for, classpage)
|
193
|
-
end
|
194
|
-
|
195
|
-
def test_template_for_partial
|
196
|
-
partial = Pathname.new @options.template_dir + '_sidebar_classes.rhtml'
|
197
|
-
|
198
|
-
template = @g.send(:template_for, partial, false, RDoc::ERBPartial)
|
199
|
-
|
200
|
-
assert_kind_of RDoc::ERBPartial, template
|
201
|
-
|
202
|
-
assert_same template, @g.send(:template_for, partial)
|
203
|
-
end
|
204
|
-
|
205
|
-
##
|
206
|
-
# Asserts that +filename+ has a link count greater than 1 if hard links to
|
207
|
-
# @tmpdir are supported.
|
208
|
-
|
209
|
-
def assert_hard_link filename
|
210
|
-
assert_file filename
|
211
|
-
|
212
|
-
src = @g.template_dir + '_head.rhtml'
|
213
|
-
dst = File.join @tmpdir, 'hardlinktest'
|
214
|
-
|
215
|
-
begin
|
216
|
-
FileUtils.ln src, dst
|
217
|
-
nlink = File.stat(dst).nlink if File.identical? src, dst
|
218
|
-
FileUtils.rm dst
|
219
|
-
return if nlink == 1
|
220
|
-
rescue SystemCallError
|
221
|
-
return
|
222
|
-
end
|
223
|
-
|
224
|
-
assert_operator File.stat(filename).nlink, :>, 1,
|
225
|
-
"#{filename} is not hard-linked"
|
226
|
-
end
|
227
|
-
|
228
|
-
end
|
229
|
-
|
@@ -1,324 +0,0 @@
|
|
1
|
-
# coding: US-ASCII
|
2
|
-
|
3
|
-
require 'rdoc/test_case'
|
4
|
-
|
5
|
-
class TestRDocGeneratorJsonIndex < RDoc::TestCase
|
6
|
-
|
7
|
-
def setup
|
8
|
-
super
|
9
|
-
|
10
|
-
@tmpdir = File.join Dir.tmpdir, "test_rdoc_generator_darkfish_#{$$}"
|
11
|
-
FileUtils.mkdir_p @tmpdir
|
12
|
-
|
13
|
-
@options = RDoc::Options.new
|
14
|
-
@options.files = []
|
15
|
-
# JsonIndex is used in conjunction with another generator
|
16
|
-
@options.setup_generator 'darkfish'
|
17
|
-
@options.template_dir = ''
|
18
|
-
@options.op_dir = @tmpdir
|
19
|
-
@options.option_parser = OptionParser.new
|
20
|
-
@options.finish
|
21
|
-
|
22
|
-
@darkfish = RDoc::Generator::Darkfish.new @store, @options
|
23
|
-
@g = RDoc::Generator::JsonIndex.new @darkfish, @options
|
24
|
-
|
25
|
-
@rdoc.options = @options
|
26
|
-
@rdoc.generator = @g
|
27
|
-
|
28
|
-
@top_level = @store.add_file 'file.rb'
|
29
|
-
@top_level.parser = RDoc::Parser::Ruby
|
30
|
-
|
31
|
-
@klass = @top_level.add_class RDoc::NormalClass, 'C'
|
32
|
-
|
33
|
-
@meth = @klass.add_method RDoc::AnyMethod.new(nil, 'meth')
|
34
|
-
@meth.record_location @top_level
|
35
|
-
|
36
|
-
@nest_klass = @klass.add_class RDoc::NormalClass, 'D'
|
37
|
-
@nest_klass.record_location @top_level
|
38
|
-
|
39
|
-
@nest_meth = @nest_klass.add_method RDoc::AnyMethod.new(nil, 'meth')
|
40
|
-
|
41
|
-
@ignored = @top_level.add_class RDoc::NormalClass, 'Ignored'
|
42
|
-
@ignored.ignore
|
43
|
-
|
44
|
-
@page = @store.add_file 'page.rdoc'
|
45
|
-
@page.parser = RDoc::Parser::Simple
|
46
|
-
|
47
|
-
@top_levels = [@top_level, @page].sort
|
48
|
-
@klasses = [@klass, @nest_klass, @ignored]
|
49
|
-
|
50
|
-
Dir.chdir @tmpdir
|
51
|
-
end
|
52
|
-
|
53
|
-
def teardown
|
54
|
-
super
|
55
|
-
|
56
|
-
Dir.chdir @pwd
|
57
|
-
FileUtils.rm_rf @tmpdir
|
58
|
-
end
|
59
|
-
|
60
|
-
def test_build_index
|
61
|
-
index = @g.build_index
|
62
|
-
|
63
|
-
expected = {
|
64
|
-
:index => {
|
65
|
-
:searchIndex => %w[c d meth() meth() page],
|
66
|
-
:longSearchIndex => %w[c c::d c#meth() c::d#meth()],
|
67
|
-
:info => [
|
68
|
-
@klass.search_record[2..-1],
|
69
|
-
@nest_klass.search_record[2..-1],
|
70
|
-
@meth.search_record[2..-1],
|
71
|
-
@nest_meth.search_record[2..-1],
|
72
|
-
@page.search_record[2..-1],
|
73
|
-
],
|
74
|
-
},
|
75
|
-
}
|
76
|
-
|
77
|
-
expected[:index][:longSearchIndex] << ''
|
78
|
-
|
79
|
-
assert_equal expected, index
|
80
|
-
end
|
81
|
-
|
82
|
-
def test_class_dir
|
83
|
-
assert_equal @darkfish.class_dir, @g.class_dir
|
84
|
-
end
|
85
|
-
|
86
|
-
def test_file_dir
|
87
|
-
assert_equal @darkfish.file_dir, @g.file_dir
|
88
|
-
end
|
89
|
-
|
90
|
-
def test_generate
|
91
|
-
@g.generate
|
92
|
-
|
93
|
-
assert_file 'js/searcher.js'
|
94
|
-
assert_file 'js/navigation.js'
|
95
|
-
assert_file 'js/search_index.js'
|
96
|
-
|
97
|
-
json = File.read 'js/search_index.js'
|
98
|
-
|
99
|
-
json =~ /\Avar search_data = /
|
100
|
-
|
101
|
-
assignment = $&
|
102
|
-
index = $'
|
103
|
-
|
104
|
-
refute_empty assignment
|
105
|
-
|
106
|
-
index = JSON.parse index
|
107
|
-
|
108
|
-
info = [
|
109
|
-
@klass.search_record[2..-1],
|
110
|
-
@nest_klass.search_record[2..-1],
|
111
|
-
@meth.search_record[2..-1],
|
112
|
-
@nest_meth.search_record[2..-1],
|
113
|
-
@page.search_record[2..-1],
|
114
|
-
]
|
115
|
-
|
116
|
-
expected = {
|
117
|
-
'index' => {
|
118
|
-
'searchIndex' => [
|
119
|
-
'c',
|
120
|
-
'd',
|
121
|
-
'meth()',
|
122
|
-
'meth()',
|
123
|
-
'page',
|
124
|
-
],
|
125
|
-
'longSearchIndex' => [
|
126
|
-
'c',
|
127
|
-
'c::d',
|
128
|
-
'c#meth()',
|
129
|
-
'c::d#meth()',
|
130
|
-
'',
|
131
|
-
],
|
132
|
-
'info' => info,
|
133
|
-
},
|
134
|
-
}
|
135
|
-
|
136
|
-
assert_equal expected, index
|
137
|
-
end
|
138
|
-
|
139
|
-
def test_generate_gzipped
|
140
|
-
begin
|
141
|
-
require 'zlib'
|
142
|
-
rescue LoadError
|
143
|
-
skip "no zlib"
|
144
|
-
end
|
145
|
-
@g.generate
|
146
|
-
@g.generate_gzipped
|
147
|
-
|
148
|
-
assert_file 'js/searcher.js'
|
149
|
-
assert_file 'js/searcher.js.gz'
|
150
|
-
assert_file 'js/navigation.js'
|
151
|
-
assert_file 'js/navigation.js.gz'
|
152
|
-
assert_file 'js/search_index.js'
|
153
|
-
assert_file 'js/search_index.js.gz'
|
154
|
-
|
155
|
-
json = File.open('js/search_index.js.gz') {|gzip|
|
156
|
-
Zlib::GzipReader.new(gzip).read
|
157
|
-
}
|
158
|
-
|
159
|
-
json =~ /\Avar search_data = /
|
160
|
-
|
161
|
-
assignment = $&
|
162
|
-
index = $'
|
163
|
-
|
164
|
-
refute_empty assignment
|
165
|
-
|
166
|
-
index = JSON.parse index
|
167
|
-
|
168
|
-
info = [
|
169
|
-
@klass.search_record[2..-1],
|
170
|
-
@nest_klass.search_record[2..-1],
|
171
|
-
@meth.search_record[2..-1],
|
172
|
-
@nest_meth.search_record[2..-1],
|
173
|
-
@page.search_record[2..-1],
|
174
|
-
]
|
175
|
-
|
176
|
-
expected = {
|
177
|
-
'index' => {
|
178
|
-
'searchIndex' => [
|
179
|
-
'c',
|
180
|
-
'd',
|
181
|
-
'meth()',
|
182
|
-
'meth()',
|
183
|
-
'page',
|
184
|
-
],
|
185
|
-
'longSearchIndex' => [
|
186
|
-
'c',
|
187
|
-
'c::d',
|
188
|
-
'c#meth()',
|
189
|
-
'c::d#meth()',
|
190
|
-
'',
|
191
|
-
],
|
192
|
-
'info' => info,
|
193
|
-
},
|
194
|
-
}
|
195
|
-
|
196
|
-
assert_equal expected, index
|
197
|
-
end
|
198
|
-
|
199
|
-
def test_generate_utf_8
|
200
|
-
skip "Encoding not implemented" unless Object.const_defined? :Encoding
|
201
|
-
|
202
|
-
text = "5\xB0"
|
203
|
-
text.force_encoding Encoding::ISO_8859_1
|
204
|
-
@klass.add_comment comment(text), @top_level
|
205
|
-
|
206
|
-
@g.generate
|
207
|
-
|
208
|
-
json = File.read 'js/search_index.js'
|
209
|
-
json.force_encoding Encoding::UTF_8
|
210
|
-
|
211
|
-
json =~ /\Avar search_data = /
|
212
|
-
|
213
|
-
index = $'
|
214
|
-
|
215
|
-
index = JSON.parse index
|
216
|
-
|
217
|
-
klass_record = @klass.search_record[2..-1]
|
218
|
-
klass_record[-1] = "<p>5\xc2\xb0\n"
|
219
|
-
klass_record.last.force_encoding Encoding::UTF_8
|
220
|
-
|
221
|
-
info = [
|
222
|
-
klass_record,
|
223
|
-
@nest_klass.search_record[2..-1],
|
224
|
-
@meth.search_record[2..-1],
|
225
|
-
@nest_meth.search_record[2..-1],
|
226
|
-
@page.search_record[2..-1],
|
227
|
-
]
|
228
|
-
|
229
|
-
expected = {
|
230
|
-
'index' => {
|
231
|
-
'searchIndex' => [
|
232
|
-
'c',
|
233
|
-
'd',
|
234
|
-
'meth()',
|
235
|
-
'meth()',
|
236
|
-
'page',
|
237
|
-
],
|
238
|
-
'longSearchIndex' => [
|
239
|
-
'c',
|
240
|
-
'c::d',
|
241
|
-
'c#meth()',
|
242
|
-
'c::d#meth()',
|
243
|
-
'',
|
244
|
-
],
|
245
|
-
'info' => info,
|
246
|
-
},
|
247
|
-
}
|
248
|
-
|
249
|
-
assert_equal expected, index
|
250
|
-
end
|
251
|
-
|
252
|
-
def test_index_classes
|
253
|
-
@g.reset @top_levels, @klasses
|
254
|
-
|
255
|
-
@g.index_classes
|
256
|
-
|
257
|
-
expected = {
|
258
|
-
:searchIndex => %w[c d],
|
259
|
-
:longSearchIndex => %w[c c::d],
|
260
|
-
:info => [
|
261
|
-
@klass.search_record[2..-1],
|
262
|
-
@nest_klass.search_record[2..-1],
|
263
|
-
],
|
264
|
-
}
|
265
|
-
|
266
|
-
assert_equal expected, @g.index
|
267
|
-
end
|
268
|
-
|
269
|
-
def test_index_classes_nodoc
|
270
|
-
@klass.document_self = false
|
271
|
-
@nest_klass.document_self = false
|
272
|
-
@meth.document_self = false
|
273
|
-
@nest_meth.document_self = false
|
274
|
-
|
275
|
-
@g.reset @top_levels, @klasses
|
276
|
-
|
277
|
-
@g.index_classes
|
278
|
-
|
279
|
-
expected = {
|
280
|
-
:searchIndex => [],
|
281
|
-
:longSearchIndex => [],
|
282
|
-
:info => [],
|
283
|
-
}
|
284
|
-
|
285
|
-
assert_equal expected, @g.index
|
286
|
-
end
|
287
|
-
|
288
|
-
def test_index_methods
|
289
|
-
@g.reset @top_levels, @klasses
|
290
|
-
|
291
|
-
@g.index_methods
|
292
|
-
|
293
|
-
expected = {
|
294
|
-
:searchIndex => %w[meth() meth()],
|
295
|
-
:longSearchIndex => %w[c#meth() c::d#meth()],
|
296
|
-
:info => [
|
297
|
-
@meth.search_record[2..-1],
|
298
|
-
@nest_meth.search_record[2..-1],
|
299
|
-
],
|
300
|
-
}
|
301
|
-
|
302
|
-
assert_equal expected, @g.index
|
303
|
-
end
|
304
|
-
|
305
|
-
def test_index_pages
|
306
|
-
@g.reset @top_levels, @klasses
|
307
|
-
|
308
|
-
@g.index_pages
|
309
|
-
|
310
|
-
expected = {
|
311
|
-
:searchIndex => %w[page],
|
312
|
-
:longSearchIndex => [''],
|
313
|
-
:info => [@page.search_record[2..-1]],
|
314
|
-
}
|
315
|
-
|
316
|
-
assert_equal expected, @g.index
|
317
|
-
end
|
318
|
-
|
319
|
-
def test_search_string
|
320
|
-
assert_equal 'cd', @g.search_string('C d')
|
321
|
-
end
|
322
|
-
|
323
|
-
end
|
324
|
-
|
@@ -1,59 +0,0 @@
|
|
1
|
-
require 'rdoc/test_case'
|
2
|
-
|
3
|
-
class TestRDocGeneratorMarkup < RDoc::TestCase
|
4
|
-
|
5
|
-
include RDoc::Text
|
6
|
-
include RDoc::Generator::Markup
|
7
|
-
|
8
|
-
attr_reader :store
|
9
|
-
|
10
|
-
def setup
|
11
|
-
super
|
12
|
-
|
13
|
-
@options = RDoc::Options.new
|
14
|
-
@rdoc.options = @options
|
15
|
-
|
16
|
-
@parent = self
|
17
|
-
@path = '/index.html'
|
18
|
-
@symbols = {}
|
19
|
-
end
|
20
|
-
|
21
|
-
def test_aref_to
|
22
|
-
assert_equal 'Foo/Bar.html', aref_to('Foo/Bar.html')
|
23
|
-
end
|
24
|
-
|
25
|
-
def test_as_href
|
26
|
-
assert_equal '../index.html', as_href('Foo/Bar.html')
|
27
|
-
end
|
28
|
-
|
29
|
-
def test_cvs_url
|
30
|
-
assert_equal 'http://example/this_page',
|
31
|
-
cvs_url('http://example/', 'this_page')
|
32
|
-
|
33
|
-
assert_equal 'http://example/?page=this_page&foo=bar',
|
34
|
-
cvs_url('http://example/?page=%s&foo=bar', 'this_page')
|
35
|
-
end
|
36
|
-
|
37
|
-
def test_description
|
38
|
-
@comment = '= Hello'
|
39
|
-
|
40
|
-
links = '<span><a href="#label-Hello">¶</a> ' +
|
41
|
-
'<a href="#top">↑</a></span>'
|
42
|
-
|
43
|
-
assert_equal "\n<h1 id=\"label-Hello\">Hello#{links}</h1>\n", description
|
44
|
-
end
|
45
|
-
|
46
|
-
def test_formatter
|
47
|
-
assert_kind_of RDoc::Markup::ToHtmlCrossref, formatter
|
48
|
-
refute formatter.show_hash
|
49
|
-
assert_same self, formatter.context
|
50
|
-
end
|
51
|
-
|
52
|
-
attr_reader :path
|
53
|
-
|
54
|
-
def find_symbol name
|
55
|
-
@symbols[name]
|
56
|
-
end
|
57
|
-
|
58
|
-
end
|
59
|
-
|
@@ -1,91 +0,0 @@
|
|
1
|
-
require 'rdoc/test_case'
|
2
|
-
|
3
|
-
class TestRDocGeneratorPOT < RDoc::TestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
super
|
7
|
-
|
8
|
-
@options = RDoc::Options.new
|
9
|
-
@tmpdir = File.join Dir.tmpdir, "test_rdoc_generator_pot_#{$$}"
|
10
|
-
FileUtils.mkdir_p @tmpdir
|
11
|
-
|
12
|
-
@generator = RDoc::Generator::POT.new @store, @options
|
13
|
-
|
14
|
-
@top_level = @store.add_file 'file.rb'
|
15
|
-
@klass = @top_level.add_class RDoc::NormalClass, 'Object'
|
16
|
-
@klass.add_comment 'This is a class', @top_level
|
17
|
-
@klass.add_section 'This is a section', comment('This is a section comment')
|
18
|
-
|
19
|
-
@const = RDoc::Constant.new "CONSTANT", "29", "This is a constant"
|
20
|
-
|
21
|
-
@meth = RDoc::AnyMethod.new nil, 'method'
|
22
|
-
@meth.record_location @top_level
|
23
|
-
@meth.comment = 'This is a method'
|
24
|
-
|
25
|
-
@attr = RDoc::Attr.new nil, 'attr', 'RW', ''
|
26
|
-
@attr.record_location @top_level
|
27
|
-
@attr.comment = 'This is an attribute'
|
28
|
-
|
29
|
-
@klass.add_constant @const
|
30
|
-
@klass.add_method @meth
|
31
|
-
@klass.add_attribute @attr
|
32
|
-
|
33
|
-
Dir.chdir @tmpdir
|
34
|
-
end
|
35
|
-
|
36
|
-
def teardown
|
37
|
-
super
|
38
|
-
|
39
|
-
Dir.chdir @pwd
|
40
|
-
FileUtils.rm_rf @tmpdir
|
41
|
-
end
|
42
|
-
|
43
|
-
def test_generate
|
44
|
-
@generator.generate
|
45
|
-
|
46
|
-
assert_equal <<-POT, File.read(File.join(@tmpdir, 'rdoc.pot'))
|
47
|
-
# SOME DESCRIPTIVE TITLE.
|
48
|
-
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
49
|
-
# This file is distributed under the same license as the PACKAGE package.
|
50
|
-
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
51
|
-
#, fuzzy
|
52
|
-
msgid ""
|
53
|
-
msgstr ""
|
54
|
-
"Project-Id-Version: PACKAGE VERSEION\\n"
|
55
|
-
"Report-Msgid-Bugs-To:\\n"
|
56
|
-
"PO-Revision-Date: YEAR-MO_DA HO:MI+ZONE\\n"
|
57
|
-
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
|
58
|
-
"Language-Team: LANGUAGE <LL@li.org>\\n"
|
59
|
-
"Language:\\n"
|
60
|
-
"MIME-Version: 1.0\\n"
|
61
|
-
"Content-Type: text/plain; charset=CHARSET\\n"
|
62
|
-
"Content-Transfer-Encoding: 8bit\\n"
|
63
|
-
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\\n"
|
64
|
-
|
65
|
-
#. Object
|
66
|
-
msgid "This is a class"
|
67
|
-
msgstr ""
|
68
|
-
|
69
|
-
#. Object::CONSTANT
|
70
|
-
msgid "This is a constant"
|
71
|
-
msgstr ""
|
72
|
-
|
73
|
-
#. Object#method
|
74
|
-
msgid "This is a method"
|
75
|
-
msgstr ""
|
76
|
-
|
77
|
-
#. Object: section title
|
78
|
-
msgid "This is a section"
|
79
|
-
msgstr ""
|
80
|
-
|
81
|
-
#. Object: This is a section
|
82
|
-
msgid "This is a section comment"
|
83
|
-
msgstr ""
|
84
|
-
|
85
|
-
#. Object#attr
|
86
|
-
msgid "This is an attribute"
|
87
|
-
msgstr ""
|
88
|
-
POT
|
89
|
-
end
|
90
|
-
|
91
|
-
end
|