rdoc 3.1 → 6.3.3

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.

Files changed (247) hide show
  1. checksums.yaml +7 -0
  2. data/CONTRIBUTING.rdoc +220 -0
  3. data/CVE-2013-0256.rdoc +49 -0
  4. data/ExampleMarkdown.md +37 -0
  5. data/ExampleRDoc.rdoc +208 -0
  6. data/Gemfile +12 -0
  7. data/History.rdoc +1666 -0
  8. data/LEGAL.rdoc +50 -0
  9. data/LICENSE.rdoc +57 -0
  10. data/README.rdoc +129 -0
  11. data/RI.rdoc +57 -0
  12. data/Rakefile +84 -81
  13. data/TODO.rdoc +59 -0
  14. data/bin/console +7 -0
  15. data/bin/setup +6 -0
  16. data/{bin → exe}/rdoc +11 -2
  17. data/exe/ri +12 -0
  18. data/lib/rdoc/alias.rb +1 -2
  19. data/lib/rdoc/anon_class.rb +3 -2
  20. data/lib/rdoc/any_method.rb +234 -40
  21. data/lib/rdoc/attr.rb +79 -11
  22. data/lib/rdoc/class_module.rb +443 -71
  23. data/lib/rdoc/code_object.rb +216 -20
  24. data/lib/rdoc/code_objects.rb +4 -21
  25. data/lib/rdoc/comment.rb +250 -0
  26. data/lib/rdoc/constant.rb +110 -9
  27. data/lib/rdoc/context/section.rb +232 -0
  28. data/lib/rdoc/context.rb +392 -172
  29. data/lib/rdoc/cross_reference.rb +202 -0
  30. data/lib/rdoc/encoding.rb +83 -28
  31. data/lib/rdoc/erb_partial.rb +19 -0
  32. data/lib/rdoc/erbio.rb +8 -3
  33. data/lib/rdoc/extend.rb +10 -0
  34. data/lib/rdoc/generator/darkfish.rb +507 -84
  35. data/lib/rdoc/generator/json_index.rb +300 -0
  36. data/lib/rdoc/generator/markup.rb +27 -74
  37. data/lib/rdoc/generator/pot/message_extractor.rb +68 -0
  38. data/lib/rdoc/generator/pot/po.rb +84 -0
  39. data/lib/rdoc/generator/pot/po_entry.rb +141 -0
  40. data/lib/rdoc/generator/pot.rb +98 -0
  41. data/lib/rdoc/generator/ri.rb +8 -62
  42. data/lib/rdoc/generator/template/darkfish/_footer.rhtml +5 -0
  43. data/lib/rdoc/generator/template/darkfish/_head.rhtml +22 -0
  44. data/lib/rdoc/generator/template/darkfish/_sidebar_VCS_info.rhtml +19 -0
  45. data/lib/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +9 -0
  46. data/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +15 -0
  47. data/lib/rdoc/generator/template/darkfish/_sidebar_in_files.rhtml +9 -0
  48. data/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +15 -0
  49. data/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +15 -0
  50. data/lib/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +12 -0
  51. data/lib/rdoc/generator/template/darkfish/_sidebar_navigation.rhtml +11 -0
  52. data/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +12 -0
  53. data/lib/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +11 -0
  54. data/lib/rdoc/generator/template/darkfish/_sidebar_search.rhtml +14 -0
  55. data/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +11 -0
  56. data/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +18 -0
  57. data/lib/rdoc/generator/template/darkfish/class.rhtml +172 -0
  58. data/lib/rdoc/generator/template/darkfish/css/fonts.css +167 -0
  59. data/lib/rdoc/generator/template/darkfish/css/rdoc.css +639 -0
  60. data/lib/rdoc/generator/template/darkfish/fonts/Lato-Light.ttf +0 -0
  61. data/lib/rdoc/generator/template/darkfish/fonts/Lato-LightItalic.ttf +0 -0
  62. data/lib/rdoc/generator/template/darkfish/fonts/Lato-Regular.ttf +0 -0
  63. data/lib/rdoc/generator/template/darkfish/fonts/Lato-RegularItalic.ttf +0 -0
  64. data/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
  65. data/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
  66. data/lib/rdoc/generator/template/darkfish/images/add.png +0 -0
  67. data/lib/rdoc/generator/template/darkfish/images/arrow_up.png +0 -0
  68. data/lib/rdoc/generator/template/darkfish/images/delete.png +0 -0
  69. data/lib/rdoc/generator/template/darkfish/images/tag_blue.png +0 -0
  70. data/lib/rdoc/generator/template/darkfish/images/transparent.png +0 -0
  71. data/lib/rdoc/generator/template/darkfish/index.rhtml +18 -60
  72. data/lib/rdoc/generator/template/darkfish/js/darkfish.js +51 -83
  73. data/lib/rdoc/generator/template/darkfish/js/search.js +110 -0
  74. data/lib/rdoc/generator/template/darkfish/page.rhtml +18 -0
  75. data/lib/rdoc/generator/template/darkfish/servlet_not_found.rhtml +18 -0
  76. data/lib/rdoc/generator/template/darkfish/servlet_root.rhtml +62 -0
  77. data/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +58 -0
  78. data/lib/rdoc/generator/template/json_index/.document +1 -0
  79. data/lib/rdoc/generator/template/json_index/js/navigation.js +105 -0
  80. data/lib/rdoc/generator/template/json_index/js/searcher.js +229 -0
  81. data/lib/rdoc/generator.rb +24 -13
  82. data/lib/rdoc/ghost_method.rb +1 -2
  83. data/lib/rdoc/i18n/locale.rb +102 -0
  84. data/lib/rdoc/i18n/text.rb +126 -0
  85. data/lib/rdoc/i18n.rb +10 -0
  86. data/lib/rdoc/include.rb +5 -95
  87. data/lib/rdoc/known_classes.rb +5 -2
  88. data/lib/rdoc/markdown/entities.rb +2132 -0
  89. data/lib/rdoc/markdown/literals.kpeg +23 -0
  90. data/lib/rdoc/markdown/literals.rb +416 -0
  91. data/lib/rdoc/markdown.kpeg +1237 -0
  92. data/lib/rdoc/markdown.rb +16684 -0
  93. data/lib/rdoc/markup/attr_changer.rb +23 -0
  94. data/lib/rdoc/markup/attr_span.rb +36 -0
  95. data/lib/rdoc/markup/attribute_manager.rb +135 -62
  96. data/lib/rdoc/markup/attributes.rb +71 -0
  97. data/lib/rdoc/markup/blank_line.rb +1 -0
  98. data/lib/rdoc/markup/block_quote.rb +15 -0
  99. data/lib/rdoc/markup/document.rb +96 -9
  100. data/lib/rdoc/markup/formatter.rb +138 -25
  101. data/lib/rdoc/markup/hard_break.rb +32 -0
  102. data/lib/rdoc/markup/heading.rb +61 -2
  103. data/lib/rdoc/markup/include.rb +43 -0
  104. data/lib/rdoc/markup/indented_paragraph.rb +48 -0
  105. data/lib/rdoc/markup/list.rb +25 -4
  106. data/lib/rdoc/markup/list_item.rb +18 -4
  107. data/lib/rdoc/markup/paragraph.rb +15 -0
  108. data/lib/rdoc/markup/parser.rb +180 -88
  109. data/lib/rdoc/markup/pre_process.rb +183 -38
  110. data/lib/rdoc/markup/raw.rb +6 -5
  111. data/lib/rdoc/markup/regexp_handling.rb +41 -0
  112. data/lib/rdoc/markup/rule.rb +1 -0
  113. data/lib/rdoc/markup/table.rb +47 -0
  114. data/lib/rdoc/markup/to_ansi.rb +17 -7
  115. data/lib/rdoc/markup/to_bs.rb +5 -8
  116. data/lib/rdoc/markup/to_html.rb +238 -137
  117. data/lib/rdoc/markup/to_html_crossref.rb +125 -152
  118. data/lib/rdoc/markup/to_html_snippet.rb +285 -0
  119. data/lib/rdoc/markup/to_joined_paragraph.rb +47 -0
  120. data/lib/rdoc/markup/to_label.rb +75 -0
  121. data/lib/rdoc/markup/to_markdown.rb +192 -0
  122. data/lib/rdoc/markup/to_rdoc.rb +85 -15
  123. data/lib/rdoc/markup/to_table_of_contents.rb +89 -0
  124. data/lib/rdoc/markup/to_test.rb +2 -4
  125. data/lib/rdoc/markup/to_tt_only.rb +121 -0
  126. data/lib/rdoc/markup/verbatim.rb +39 -0
  127. data/lib/rdoc/markup.rb +388 -110
  128. data/lib/rdoc/meta_method.rb +1 -2
  129. data/lib/rdoc/method_attr.rb +87 -21
  130. data/lib/rdoc/mixin.rb +121 -0
  131. data/lib/rdoc/normal_class.rb +39 -10
  132. data/lib/rdoc/normal_module.rb +22 -7
  133. data/lib/rdoc/options.rb +613 -73
  134. data/lib/rdoc/parser/c.rb +621 -287
  135. data/lib/rdoc/parser/changelog.rb +335 -0
  136. data/lib/rdoc/parser/markdown.rb +24 -0
  137. data/lib/rdoc/parser/rd.rb +23 -0
  138. data/lib/rdoc/parser/ripper_state_lex.rb +590 -0
  139. data/lib/rdoc/parser/ruby.rb +1368 -762
  140. data/lib/rdoc/parser/ruby_tools.rb +42 -35
  141. data/lib/rdoc/parser/simple.rb +23 -11
  142. data/lib/rdoc/parser/text.rb +12 -0
  143. data/lib/rdoc/parser.rb +162 -89
  144. data/lib/rdoc/rd/block_parser.rb +1056 -0
  145. data/lib/rdoc/rd/block_parser.ry +639 -0
  146. data/lib/rdoc/rd/inline.rb +72 -0
  147. data/lib/rdoc/rd/inline_parser.rb +1208 -0
  148. data/lib/rdoc/rd/inline_parser.ry +593 -0
  149. data/lib/rdoc/rd.rb +100 -0
  150. data/lib/rdoc/rdoc.rb +208 -115
  151. data/lib/rdoc/require.rb +1 -2
  152. data/lib/rdoc/ri/driver.rb +734 -239
  153. data/lib/rdoc/ri/formatter.rb +1 -0
  154. data/lib/rdoc/ri/paths.rb +91 -48
  155. data/lib/rdoc/ri/store.rb +3 -261
  156. data/lib/rdoc/ri/task.rb +71 -0
  157. data/lib/rdoc/ri.rb +5 -2
  158. data/lib/rdoc/rubygems_hook.rb +246 -0
  159. data/lib/rdoc/servlet.rb +451 -0
  160. data/lib/rdoc/single_class.rb +14 -2
  161. data/lib/rdoc/stats/normal.rb +19 -12
  162. data/lib/rdoc/stats/quiet.rb +1 -0
  163. data/lib/rdoc/stats/verbose.rb +1 -0
  164. data/lib/rdoc/stats.rb +262 -104
  165. data/lib/rdoc/store.rb +979 -0
  166. data/lib/rdoc/task.rb +84 -44
  167. data/lib/rdoc/text.rb +117 -72
  168. data/lib/rdoc/token_stream.rb +73 -4
  169. data/lib/rdoc/tom_doc.rb +263 -0
  170. data/lib/rdoc/top_level.rb +111 -261
  171. data/lib/rdoc/version.rb +8 -0
  172. data/lib/rdoc.rb +127 -64
  173. data/man/ri.1 +247 -0
  174. data/rdoc.gemspec +249 -0
  175. metadata +171 -291
  176. data/.autotest +0 -16
  177. data/.document +0 -5
  178. data/History.txt +0 -594
  179. data/LICENSE.txt +0 -57
  180. data/Manifest.txt +0 -158
  181. data/README.txt +0 -45
  182. data/RI.txt +0 -58
  183. data/bin/ri +0 -5
  184. data/lib/rdoc/gauntlet.rb +0 -52
  185. data/lib/rdoc/generator/template/darkfish/classpage.rhtml +0 -296
  186. data/lib/rdoc/generator/template/darkfish/filepage.rhtml +0 -124
  187. data/lib/rdoc/generator/template/darkfish/js/jquery.js +0 -32
  188. data/lib/rdoc/generator/template/darkfish/js/quicksearch.js +0 -114
  189. data/lib/rdoc/generator/template/darkfish/js/thickbox-compressed.js +0 -10
  190. data/lib/rdoc/generator/template/darkfish/rdoc.css +0 -706
  191. data/lib/rdoc/markup/formatter_test_case.rb +0 -689
  192. data/lib/rdoc/markup/inline.rb +0 -137
  193. data/lib/rdoc/markup/text_formatter_test_case.rb +0 -116
  194. data/lib/rdoc/ruby_lex.rb +0 -1291
  195. data/lib/rdoc/ruby_token.rb +0 -416
  196. data/test/README +0 -1
  197. data/test/binary.dat +0 -0
  198. data/test/hidden.zip.txt +0 -1
  199. data/test/test.ja.rdoc +0 -10
  200. data/test/test.ja.txt +0 -8
  201. data/test/test.txt +0 -1
  202. data/test/test_attribute_manager.rb +0 -120
  203. data/test/test_rdoc_alias.rb +0 -13
  204. data/test/test_rdoc_any_method.rb +0 -126
  205. data/test/test_rdoc_attr.rb +0 -61
  206. data/test/test_rdoc_class_module.rb +0 -233
  207. data/test/test_rdoc_code_object.rb +0 -165
  208. data/test/test_rdoc_constant.rb +0 -15
  209. data/test/test_rdoc_context.rb +0 -370
  210. data/test/test_rdoc_encoding.rb +0 -166
  211. data/test/test_rdoc_generator_darkfish.rb +0 -119
  212. data/test/test_rdoc_generator_ri.rb +0 -76
  213. data/test/test_rdoc_include.rb +0 -96
  214. data/test/test_rdoc_markup.rb +0 -37
  215. data/test/test_rdoc_markup_attribute_manager.rb +0 -240
  216. data/test/test_rdoc_markup_document.rb +0 -51
  217. data/test/test_rdoc_markup_paragraph.rb +0 -9
  218. data/test/test_rdoc_markup_parser.rb +0 -1395
  219. data/test/test_rdoc_markup_pre_process.rb +0 -185
  220. data/test/test_rdoc_markup_raw.rb +0 -27
  221. data/test/test_rdoc_markup_to_ansi.rb +0 -328
  222. data/test/test_rdoc_markup_to_bs.rb +0 -341
  223. data/test/test_rdoc_markup_to_html.rb +0 -335
  224. data/test/test_rdoc_markup_to_html_crossref.rb +0 -169
  225. data/test/test_rdoc_markup_to_rdoc.rb +0 -327
  226. data/test/test_rdoc_method_attr.rb +0 -122
  227. data/test/test_rdoc_normal_class.rb +0 -17
  228. data/test/test_rdoc_normal_module.rb +0 -31
  229. data/test/test_rdoc_options.rb +0 -342
  230. data/test/test_rdoc_parser.rb +0 -83
  231. data/test/test_rdoc_parser_c.rb +0 -912
  232. data/test/test_rdoc_parser_ruby.rb +0 -1754
  233. data/test/test_rdoc_parser_simple.rb +0 -99
  234. data/test/test_rdoc_rdoc.rb +0 -164
  235. data/test/test_rdoc_require.rb +0 -25
  236. data/test/test_rdoc_ri_driver.rb +0 -846
  237. data/test/test_rdoc_ri_paths.rb +0 -43
  238. data/test/test_rdoc_ri_store.rb +0 -352
  239. data/test/test_rdoc_ruby_lex.rb +0 -23
  240. data/test/test_rdoc_stats.rb +0 -38
  241. data/test/test_rdoc_task.rb +0 -92
  242. data/test/test_rdoc_text.rb +0 -251
  243. data/test/test_rdoc_top_level.rb +0 -120
  244. data/test/xref_data.rb +0 -62
  245. data/test/xref_test_case.rb +0 -61
  246. data.tar.gz.sig +0 -3
  247. metadata.gz.sig +0 -0
@@ -1,43 +0,0 @@
1
- require 'rubygems'
2
- require 'minitest/autorun'
3
- require 'tmpdir'
4
- require 'fileutils'
5
- require 'rdoc/ri/paths'
6
-
7
- class TestRDocRIPaths < MiniTest::Unit::TestCase
8
-
9
- def setup
10
- RDoc::RI::Paths.instance_variable_set :@gemdirs, %w[/nonexistent/gemdir]
11
- end
12
-
13
- def teardown
14
- RDoc::RI::Paths.instance_variable_set :@gemdirs, nil
15
- end
16
-
17
- def test_class_path_nonexistent
18
- path = RDoc::RI::Paths.path true, true, true, true, '/nonexistent'
19
-
20
- refute_includes path, '/nonexistent'
21
- end
22
-
23
- def test_class_raw_path
24
- path = RDoc::RI::Paths.raw_path true, true, true, true
25
-
26
- assert_equal RDoc::RI::Paths::SYSDIR, path.shift
27
- assert_equal RDoc::RI::Paths::SITEDIR, path.shift
28
- assert_equal RDoc::RI::Paths::HOMEDIR, path.shift
29
- assert_equal '/nonexistent/gemdir', path.shift
30
- end
31
-
32
- def test_class_raw_path_extra_dirs
33
- path = RDoc::RI::Paths.raw_path true, true, true, true, '/nonexistent'
34
-
35
- assert_equal '/nonexistent', path.shift
36
- assert_equal RDoc::RI::Paths::SYSDIR, path.shift
37
- assert_equal RDoc::RI::Paths::SITEDIR, path.shift
38
- assert_equal RDoc::RI::Paths::HOMEDIR, path.shift
39
- assert_equal '/nonexistent/gemdir', path.shift
40
- end
41
-
42
- end
43
-
@@ -1,352 +0,0 @@
1
- require 'rubygems'
2
- require 'minitest/autorun'
3
- require 'rdoc/ri'
4
- require 'rdoc/markup'
5
- require 'tmpdir'
6
- require 'fileutils'
7
-
8
- class TestRDocRIStore < MiniTest::Unit::TestCase
9
-
10
- def setup
11
- RDoc::TopLevel.reset
12
-
13
- @tmpdir = File.join Dir.tmpdir, "test_rdoc_ri_store_#{$$}"
14
- @s = RDoc::RI::Store.new @tmpdir
15
-
16
- @top_level = RDoc::TopLevel.new 'file.rb'
17
-
18
- @klass = @top_level.add_class RDoc::NormalClass, 'Object'
19
- @klass.comment = 'original'
20
-
21
- @cmeth = RDoc::AnyMethod.new nil, 'cmethod'
22
- @cmeth.singleton = true
23
-
24
- @meth = RDoc::AnyMethod.new nil, 'method'
25
- @meth_bang = RDoc::AnyMethod.new nil, 'method!'
26
-
27
- @attr = RDoc::Attr.new nil, 'attr', 'RW', ''
28
-
29
- @klass.add_method @cmeth
30
- @klass.add_method @meth
31
- @klass.add_method @meth_bang
32
- @klass.add_attribute @attr
33
-
34
- @nest_klass = @klass.add_class RDoc::NormalClass, 'SubClass'
35
- @nest_meth = RDoc::AnyMethod.new nil, 'method'
36
- @nest_incl = RDoc::Include.new 'Incl', ''
37
-
38
- @nest_klass.add_method @nest_meth
39
- @nest_klass.add_include @nest_incl
40
-
41
- @RM = RDoc::Markup
42
- end
43
-
44
- def teardown
45
- FileUtils.rm_rf @tmpdir
46
- end
47
-
48
- def assert_cache imethods, cmethods, attrs, modules, ancestors = {}
49
- expected = {
50
- :class_methods => cmethods,
51
- :instance_methods => imethods,
52
- :attributes => attrs,
53
- :modules => modules,
54
- :ancestors => ancestors
55
- }
56
-
57
- assert_equal expected, @s.cache
58
- end
59
-
60
- def assert_directory path
61
- assert File.directory?(path), "#{path} is not a directory"
62
- end
63
-
64
- def assert_file path
65
- assert File.file?(path), "#{path} is not a file"
66
- end
67
-
68
- def refute_file path
69
- refute File.exist?(path), "#{path} exists"
70
- end
71
-
72
- def test_attributes
73
- @s.cache[:attributes]['Object'] = %w[attr]
74
-
75
- expected = { 'Object' => %w[attr] }
76
-
77
- assert_equal expected, @s.attributes
78
- end
79
-
80
- def test_class_file
81
- assert_equal File.join(@tmpdir, 'Object', 'cdesc-Object.ri'),
82
- @s.class_file('Object')
83
- assert_equal File.join(@tmpdir, 'Object', 'SubClass', 'cdesc-SubClass.ri'),
84
- @s.class_file('Object::SubClass')
85
- end
86
-
87
- def test_class_methods
88
- @s.cache[:class_methods]['Object'] = %w[method]
89
-
90
- expected = { 'Object' => %w[method] }
91
-
92
- assert_equal expected, @s.class_methods
93
- end
94
-
95
- def test_class_path
96
- assert_equal File.join(@tmpdir, 'Object'), @s.class_path('Object')
97
- assert_equal File.join(@tmpdir, 'Object', 'SubClass'),
98
- @s.class_path('Object::SubClass')
99
- end
100
-
101
- def test_dry_run
102
- refute @s.dry_run
103
-
104
- @s.dry_run = true
105
-
106
- assert @s.dry_run
107
- end
108
-
109
- def test_friendly_path
110
- @s.path = @tmpdir
111
- @s.type = nil
112
- assert_equal @s.path, @s.friendly_path
113
-
114
- @s.type = :extra
115
- assert_equal @s.path, @s.friendly_path
116
-
117
- @s.type = :system
118
- assert_equal "ruby core", @s.friendly_path
119
-
120
- @s.type = :site
121
- assert_equal "ruby site", @s.friendly_path
122
-
123
- @s.type = :home
124
- assert_equal "~/.ri", @s.friendly_path
125
-
126
- @s.type = :gem
127
- @s.path = "#{@tmpdir}/gem_repository/doc/gem_name-1.0/ri"
128
- assert_equal "gem gem_name-1.0", @s.friendly_path
129
- end
130
-
131
- def test_instance_methods
132
- @s.cache[:instance_methods]['Object'] = %w[method]
133
-
134
- expected = { 'Object' => %w[method] }
135
-
136
- assert_equal expected, @s.instance_methods
137
- end
138
-
139
- def test_load_cache
140
- cache = {
141
- :methods => %w[Object#method],
142
- :modules => %w[Object],
143
- }
144
-
145
- Dir.mkdir @tmpdir
146
-
147
- open File.join(@tmpdir, 'cache.ri'), 'wb' do |io|
148
- Marshal.dump cache, io
149
- end
150
-
151
- @s.load_cache
152
-
153
- assert_equal cache, @s.cache
154
- end
155
-
156
- def test_load_cache_no_cache
157
- cache = {
158
- :ancestors => {},
159
- :attributes => {},
160
- :class_methods => {},
161
- :instance_methods => {},
162
- :modules => [],
163
- }
164
-
165
- @s.load_cache
166
-
167
- assert_equal cache, @s.cache
168
- end
169
-
170
- def test_load_class
171
- @s.save_class @klass
172
-
173
- assert_equal @klass, @s.load_class('Object')
174
- end
175
-
176
- def test_load_method_bang
177
- @s.save_method @klass, @meth_bang
178
-
179
- meth = @s.load_method('Object', '#method!')
180
- assert_equal @meth_bang, meth
181
- end
182
-
183
- def test_method_file
184
- assert_equal File.join(@tmpdir, 'Object', 'method-i.ri'),
185
- @s.method_file('Object', 'Object#method')
186
-
187
- assert_equal File.join(@tmpdir, 'Object', 'method%21-i.ri'),
188
- @s.method_file('Object', 'Object#method!')
189
-
190
- assert_equal File.join(@tmpdir, 'Object', 'SubClass', 'method%21-i.ri'),
191
- @s.method_file('Object::SubClass', 'Object::SubClass#method!')
192
-
193
- assert_equal File.join(@tmpdir, 'Object', 'method-c.ri'),
194
- @s.method_file('Object', 'Object::method')
195
- end
196
-
197
- def test_save_cache
198
- @s.save_class @klass
199
- @s.save_method @klass, @meth
200
- @s.save_method @klass, @cmeth
201
- @s.save_class @nest_klass
202
-
203
- @s.save_cache
204
-
205
- assert_file File.join(@tmpdir, 'cache.ri')
206
-
207
- expected = {
208
- :attributes => { 'Object' => ['attr_accessor attr'] },
209
- :class_methods => { 'Object' => %w[cmethod] },
210
- :instance_methods => { 'Object' => %w[method] },
211
- :modules => %w[Object Object::SubClass],
212
- :ancestors => {
213
- 'Object' => %w[],
214
- 'Object::SubClass' => %w[Incl Object],
215
- },
216
- }
217
-
218
- open File.join(@tmpdir, 'cache.ri'), 'rb' do |io|
219
- cache = Marshal.load io.read
220
-
221
- assert_equal expected, cache
222
- end
223
- end
224
-
225
- def test_save_cache_dry_run
226
- @s.dry_run = true
227
-
228
- @s.save_class @klass
229
- @s.save_method @klass, @meth
230
- @s.save_method @klass, @cmeth
231
- @s.save_class @nest_klass
232
-
233
- @s.save_cache
234
-
235
- refute_file File.join(@tmpdir, 'cache.ri')
236
- end
237
-
238
- def test_save_cache_duplicate_methods
239
- @s.save_method @klass, @meth
240
- @s.save_method @klass, @meth
241
-
242
- @s.save_cache
243
-
244
- assert_cache({ 'Object' => %w[method] }, {}, {}, [])
245
- end
246
-
247
- def test_save_class
248
- @s.save_class @klass
249
-
250
- assert_directory File.join(@tmpdir, 'Object')
251
- assert_file File.join(@tmpdir, 'Object', 'cdesc-Object.ri')
252
-
253
- assert_cache({}, {}, { 'Object' => ['attr_accessor attr'] }, %w[Object],
254
- 'Object' => %w[])
255
-
256
- assert_equal @klass, @s.load_class('Object')
257
- end
258
-
259
- def test_save_class_basic_object
260
- @klass.instance_variable_set :@superclass, nil
261
-
262
- @s.save_class @klass
263
-
264
- assert_directory File.join(@tmpdir, 'Object')
265
- assert_file File.join(@tmpdir, 'Object', 'cdesc-Object.ri')
266
-
267
- assert_cache({}, {}, { 'Object' => ['attr_accessor attr'] }, %w[Object],
268
- 'Object' => %w[])
269
-
270
- assert_equal @klass, @s.load_class('Object')
271
- end
272
-
273
- def test_save_class_dry_run
274
- @s.dry_run = true
275
-
276
- @s.save_class @klass
277
-
278
- refute_file File.join(@tmpdir, 'Object')
279
- refute_file File.join(@tmpdir, 'Object', 'cdesc-Object.ri')
280
- end
281
-
282
- def test_save_class_merge
283
- @s.save_class @klass
284
-
285
- klass = RDoc::NormalClass.new 'Object'
286
- klass.comment = 'new class'
287
-
288
- s = RDoc::RI::Store.new @tmpdir
289
- s.save_class klass
290
-
291
- s = RDoc::RI::Store.new @tmpdir
292
-
293
- document = @RM::Document.new(
294
- @RM::Paragraph.new('original'),
295
- @RM::Paragraph.new('new class'))
296
-
297
- assert_equal document, s.load_class('Object').comment
298
- end
299
-
300
- def test_save_class_methods
301
- @s.save_class @klass
302
-
303
- assert_directory File.join(@tmpdir, 'Object')
304
- assert_file File.join(@tmpdir, 'Object', 'cdesc-Object.ri')
305
-
306
- assert_cache({}, {}, { 'Object' => ['attr_accessor attr'] }, %w[Object],
307
- 'Object' => %w[])
308
-
309
- assert_equal @klass, @s.load_class('Object')
310
- end
311
-
312
- def test_save_class_nested
313
- @s.save_class @nest_klass
314
-
315
- assert_directory File.join(@tmpdir, 'Object', 'SubClass')
316
- assert_file File.join(@tmpdir, 'Object', 'SubClass', 'cdesc-SubClass.ri')
317
-
318
- assert_cache({}, {}, {}, %w[Object::SubClass],
319
- 'Object::SubClass' => %w[Incl Object])
320
- end
321
-
322
- def test_save_method
323
- @s.save_method @klass, @meth
324
-
325
- assert_directory File.join(@tmpdir, 'Object')
326
- assert_file File.join(@tmpdir, 'Object', 'method-i.ri')
327
-
328
- assert_cache({ 'Object' => %w[method] }, {}, {}, [])
329
-
330
- assert_equal @meth, @s.load_method('Object', '#method')
331
- end
332
-
333
- def test_save_method_dry_run
334
- @s.dry_run = true
335
-
336
- @s.save_method @klass, @meth
337
-
338
- refute_file File.join(@tmpdir, 'Object')
339
- refute_file File.join(@tmpdir, 'Object', 'method-i.ri')
340
- end
341
-
342
- def test_save_method_nested
343
- @s.save_method @nest_klass, @nest_meth
344
-
345
- assert_directory File.join(@tmpdir, 'Object', 'SubClass')
346
- assert_file File.join(@tmpdir, 'Object', 'SubClass', 'method-i.ri')
347
-
348
- assert_cache({ 'Object::SubClass' => %w[method] }, {}, {}, [])
349
- end
350
-
351
- end
352
-
@@ -1,23 +0,0 @@
1
- require 'rubygems'
2
- require 'minitest/autorun'
3
- require 'rdoc/rdoc'
4
- require 'rdoc/ruby_lex'
5
-
6
- class TestRubyLex < MiniTest::Unit::TestCase
7
- def test_unary_minus
8
- ruby_lex = RDoc::RubyLex.new("-1", nil)
9
- assert_equal("-1", ruby_lex.token.value)
10
-
11
- ruby_lex = RDoc::RubyLex.new("a[-2]", nil)
12
- 2.times { ruby_lex.token } # skip "a" and "["
13
- assert_equal("-2", ruby_lex.token.value)
14
-
15
- ruby_lex = RDoc::RubyLex.new("a[0..-12]", nil)
16
- 4.times { ruby_lex.token } # skip "a", "[", "0", and ".."
17
- assert_equal("-12", ruby_lex.token.value)
18
-
19
- ruby_lex = RDoc::RubyLex.new("0+-0.1", nil)
20
- 2.times { ruby_lex.token } # skip "0" and "+"
21
- assert_equal("-0.1", ruby_lex.token.value)
22
- end
23
- end
@@ -1,38 +0,0 @@
1
- require 'rubygems'
2
- require 'minitest/autorun'
3
- require 'rdoc/stats'
4
- require 'rdoc/code_objects'
5
- require 'rdoc/markup'
6
- require 'rdoc/parser'
7
-
8
- class TestRDocStats < MiniTest::Unit::TestCase
9
-
10
- def setup
11
- RDoc::TopLevel.reset
12
-
13
- @s = RDoc::Stats.new 0
14
- end
15
-
16
- def test_report_constant_alias
17
- tl = RDoc::TopLevel.new 'fake.rb'
18
- mod = tl.add_module RDoc::NormalModule, 'M'
19
-
20
- c = tl.add_class RDoc::NormalClass, 'C'
21
- mod.add_constant c
22
-
23
- ca = RDoc::Constant.new 'CA', nil, nil
24
- ca.is_alias_for = c
25
-
26
- tl.add_constant ca
27
-
28
- RDoc::TopLevel.complete :public
29
-
30
- report = @s.report
31
-
32
- # TODO change this to refute match, aliases should be ignored as they are
33
- # programmer convenience constructs
34
- assert_match(/class Object/, report)
35
- end
36
-
37
- end
38
-
@@ -1,92 +0,0 @@
1
- require 'rubygems'
2
- require 'minitest/autorun'
3
- require 'rdoc/task'
4
-
5
- class TestRDocTask < MiniTest::Unit::TestCase
6
-
7
- def setup
8
- Rake::Task.clear
9
- end
10
-
11
- def test_inline_source
12
- t = RDoc::Task.new
13
-
14
- _, err = capture_io do
15
- assert t.inline_source
16
- end
17
-
18
- assert_equal "RDoc::Task#inline_source is deprecated\n", err
19
-
20
- _, err = capture_io do
21
- t.inline_source = false
22
- end
23
-
24
- assert_equal "RDoc::Task#inline_source is deprecated\n", err
25
-
26
- capture_io do
27
- assert t.inline_source
28
- end
29
- end
30
-
31
- def test_tasks_creation
32
- RDoc::Task.new
33
- assert Rake::Task[:rdoc]
34
- assert Rake::Task[:clobber_rdoc]
35
- assert Rake::Task[:rerdoc]
36
- end
37
-
38
- def test_tasks_creation_with_custom_name_symbol
39
- rd = RDoc::Task.new(:rdoc_dev)
40
- assert Rake::Task[:rdoc_dev]
41
- assert Rake::Task[:clobber_rdoc_dev]
42
- assert Rake::Task[:rerdoc_dev]
43
- assert_equal :rdoc_dev, rd.name
44
- end
45
-
46
- def test_generator_option
47
- rdoc_task = RDoc::Task.new do |rd|
48
- rd.generator = "ri"
49
- end
50
-
51
- assert_equal %w[-o html -f ri], rdoc_task.option_list
52
- end
53
-
54
- def test_tasks_creation_with_custom_name_string
55
- rd = RDoc::Task.new("rdoc_dev")
56
- assert Rake::Task[:rdoc_dev]
57
- assert Rake::Task[:clobber_rdoc_dev]
58
- assert Rake::Task[:rerdoc_dev]
59
- assert_equal "rdoc_dev", rd.name
60
- end
61
-
62
- def test_tasks_creation_with_custom_name_hash
63
- options = { :rdoc => "rdoc", :clobber_rdoc => "rdoc:clean", :rerdoc => "rdoc:force" }
64
- rd = RDoc::Task.new(options)
65
- assert Rake::Task[:"rdoc"]
66
- assert Rake::Task[:"rdoc:clean"]
67
- assert Rake::Task[:"rdoc:force"]
68
- assert_raises(RuntimeError) { Rake::Task[:clobber_rdoc] }
69
- assert_equal options, rd.name
70
- end
71
-
72
- def test_tasks_creation_with_custom_name_hash_will_use_default_if_an_option_isnt_given
73
- RDoc::Task.new(:clobber_rdoc => "rdoc:clean")
74
- assert Rake::Task[:rdoc]
75
- assert Rake::Task[:"rdoc:clean"]
76
- assert Rake::Task[:rerdoc]
77
- end
78
-
79
- def test_tasks_creation_with_custom_name_hash_raises_exception_if_invalid_option_given
80
- assert_raises(ArgumentError) do
81
- RDoc::Task.new(:foo => "bar")
82
- end
83
-
84
- begin
85
- RDoc::Task.new(:foo => "bar")
86
- rescue ArgumentError => e
87
- assert_match(/foo/, e.message)
88
- end
89
- end
90
-
91
- end
92
-