yard 0.9.24 → 0.9.25

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of yard might be problematic. Click here for more details.

Files changed (223) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +37 -24
  3. data/CHANGELOG.md +18 -3
  4. data/README.md +96 -101
  5. data/Rakefile +2 -0
  6. data/lib/yard/cli/diff.rb +4 -1
  7. data/lib/yard/cli/server.rb +22 -13
  8. data/lib/yard/code_objects/proxy.rb +2 -1
  9. data/lib/yard/globals.rb +1 -1
  10. data/lib/yard/handlers/c/base.rb +164 -129
  11. data/lib/yard/parser/ruby/ruby_parser.rb +6 -4
  12. data/lib/yard/registry_store.rb +1 -1
  13. data/lib/yard/templates/helpers/html_helper.rb +10 -3
  14. data/lib/yard/templates/helpers/markup/rdoc_markup.rb +5 -4
  15. data/lib/yard/version.rb +1 -1
  16. data/tasks/update_error_map.rake +53 -0
  17. data/yard.gemspec +1 -1
  18. metadata +3 -207
  19. data/spec/cli/command_parser_spec.rb +0 -43
  20. data/spec/cli/command_spec.rb +0 -36
  21. data/spec/cli/config_spec.rb +0 -148
  22. data/spec/cli/diff_spec.rb +0 -254
  23. data/spec/cli/display_spec.rb +0 -30
  24. data/spec/cli/gems_spec.rb +0 -81
  25. data/spec/cli/graph_spec.rb +0 -18
  26. data/spec/cli/help_spec.rb +0 -22
  27. data/spec/cli/i18n_spec.rb +0 -107
  28. data/spec/cli/list_spec.rb +0 -8
  29. data/spec/cli/markup_types_spec.rb +0 -22
  30. data/spec/cli/server_spec.rb +0 -324
  31. data/spec/cli/stats_spec.rb +0 -96
  32. data/spec/cli/yard_on_yard_spec.rb +0 -38
  33. data/spec/cli/yardoc_spec.rb +0 -896
  34. data/spec/cli/yri_spec.rb +0 -101
  35. data/spec/code_objects/base_spec.rb +0 -485
  36. data/spec/code_objects/class_object_spec.rb +0 -226
  37. data/spec/code_objects/code_object_list_spec.rb +0 -36
  38. data/spec/code_objects/constants_spec.rb +0 -116
  39. data/spec/code_objects/extra_file_object_spec.rb +0 -161
  40. data/spec/code_objects/macro_object_spec.rb +0 -150
  41. data/spec/code_objects/method_object_spec.rb +0 -184
  42. data/spec/code_objects/module_object_spec.rb +0 -142
  43. data/spec/code_objects/namespace_mapper_spec.rb +0 -32
  44. data/spec/code_objects/namespace_object_spec.rb +0 -171
  45. data/spec/code_objects/proxy_spec.rb +0 -147
  46. data/spec/code_objects/spec_helper.rb +0 -3
  47. data/spec/config_spec.rb +0 -171
  48. data/spec/core_ext/array_spec.rb +0 -13
  49. data/spec/core_ext/file_spec.rb +0 -72
  50. data/spec/core_ext/hash_spec.rb +0 -14
  51. data/spec/core_ext/insertion_spec.rb +0 -37
  52. data/spec/core_ext/module_spec.rb +0 -9
  53. data/spec/core_ext/string_spec.rb +0 -42
  54. data/spec/core_ext/symbol_hash_spec.rb +0 -89
  55. data/spec/docstring_parser_spec.rb +0 -280
  56. data/spec/docstring_spec.rb +0 -373
  57. data/spec/handlers/alias_handler_spec.rb +0 -82
  58. data/spec/handlers/attribute_handler_spec.rb +0 -96
  59. data/spec/handlers/base_spec.rb +0 -216
  60. data/spec/handlers/c/alias_handler_spec.rb +0 -34
  61. data/spec/handlers/c/attribute_handler_spec.rb +0 -41
  62. data/spec/handlers/c/class_handler_spec.rb +0 -78
  63. data/spec/handlers/c/constant_handler_spec.rb +0 -71
  64. data/spec/handlers/c/init_handler_spec.rb +0 -48
  65. data/spec/handlers/c/method_handler_spec.rb +0 -327
  66. data/spec/handlers/c/mixin_handler_spec.rb +0 -44
  67. data/spec/handlers/c/module_handler_spec.rb +0 -71
  68. data/spec/handlers/c/override_comment_handler_spec.rb +0 -47
  69. data/spec/handlers/c/path_handler_spec.rb +0 -36
  70. data/spec/handlers/c/spec_helper.rb +0 -23
  71. data/spec/handlers/c/struct_handler_spec.rb +0 -16
  72. data/spec/handlers/class_condition_handler_spec.rb +0 -87
  73. data/spec/handlers/class_handler_spec.rb +0 -247
  74. data/spec/handlers/class_method_handler_shared_examples.rb +0 -133
  75. data/spec/handlers/class_variable_handler_spec.rb +0 -12
  76. data/spec/handlers/constant_handler_spec.rb +0 -112
  77. data/spec/handlers/decorator_handler_methods_spec.rb +0 -393
  78. data/spec/handlers/dsl_handler_spec.rb +0 -226
  79. data/spec/handlers/examples/alias_handler_001.rb.txt +0 -46
  80. data/spec/handlers/examples/attribute_handler_001.rb.txt +0 -32
  81. data/spec/handlers/examples/class_condition_handler_001.rb.txt +0 -69
  82. data/spec/handlers/examples/class_handler_001.rb.txt +0 -120
  83. data/spec/handlers/examples/class_variable_handler_001.rb.txt +0 -10
  84. data/spec/handlers/examples/constant_handler_001.rb.txt +0 -35
  85. data/spec/handlers/examples/dsl_handler_001.rb.txt +0 -156
  86. data/spec/handlers/examples/exception_handler_001.rb.txt +0 -59
  87. data/spec/handlers/examples/extend_handler_001.rb.txt +0 -19
  88. data/spec/handlers/examples/method_condition_handler_001.rb.txt +0 -10
  89. data/spec/handlers/examples/method_handler_001.rb.txt +0 -128
  90. data/spec/handlers/examples/mixin_handler_001.rb.txt +0 -40
  91. data/spec/handlers/examples/module_handler_001.rb.txt +0 -29
  92. data/spec/handlers/examples/private_constant_handler_001.rb.txt +0 -8
  93. data/spec/handlers/examples/process_handler_001.rb.txt +0 -11
  94. data/spec/handlers/examples/visibility_handler_001.rb.txt +0 -36
  95. data/spec/handlers/examples/yield_handler_001.rb.txt +0 -54
  96. data/spec/handlers/exception_handler_spec.rb +0 -49
  97. data/spec/handlers/extend_handler_spec.rb +0 -28
  98. data/spec/handlers/legacy_base_spec.rb +0 -128
  99. data/spec/handlers/method_condition_handler_spec.rb +0 -15
  100. data/spec/handlers/method_handler_spec.rb +0 -214
  101. data/spec/handlers/mixin_handler_spec.rb +0 -60
  102. data/spec/handlers/module_function_handler_spec.rb +0 -106
  103. data/spec/handlers/module_handler_spec.rb +0 -35
  104. data/spec/handlers/private_class_method_handler_spec.rb +0 -11
  105. data/spec/handlers/private_constant_handler_spec.rb +0 -25
  106. data/spec/handlers/processor_spec.rb +0 -35
  107. data/spec/handlers/public_class_method_handler_spec.rb +0 -11
  108. data/spec/handlers/ruby/base_spec.rb +0 -95
  109. data/spec/handlers/ruby/legacy/base_spec.rb +0 -84
  110. data/spec/handlers/spec_helper.rb +0 -33
  111. data/spec/handlers/visibility_handler_spec.rb +0 -44
  112. data/spec/handlers/yield_handler_spec.rb +0 -52
  113. data/spec/i18n/locale_spec.rb +0 -81
  114. data/spec/i18n/message_spec.rb +0 -52
  115. data/spec/i18n/messages_spec.rb +0 -67
  116. data/spec/i18n/pot_generator_spec.rb +0 -295
  117. data/spec/i18n/text_spec.rb +0 -184
  118. data/spec/logging_spec.rb +0 -44
  119. data/spec/options_spec.rb +0 -171
  120. data/spec/parser/base_spec.rb +0 -24
  121. data/spec/parser/c_parser_spec.rb +0 -236
  122. data/spec/parser/examples/array.c.txt +0 -6267
  123. data/spec/parser/examples/example1.rb.txt +0 -8
  124. data/spec/parser/examples/extrafile.c.txt +0 -8
  125. data/spec/parser/examples/file.c.txt +0 -28
  126. data/spec/parser/examples/multifile.c.txt +0 -22
  127. data/spec/parser/examples/namespace.cpp.txt +0 -68
  128. data/spec/parser/examples/override.c.txt +0 -424
  129. data/spec/parser/examples/parse_in_order_001.rb.txt +0 -2
  130. data/spec/parser/examples/parse_in_order_002.rb.txt +0 -2
  131. data/spec/parser/examples/tag_handler_001.rb.txt +0 -8
  132. data/spec/parser/ruby/ast_node_spec.rb +0 -33
  133. data/spec/parser/ruby/legacy/statement_list_spec.rb +0 -299
  134. data/spec/parser/ruby/legacy/token_list_spec.rb +0 -79
  135. data/spec/parser/ruby/ruby_parser_spec.rb +0 -520
  136. data/spec/parser/ruby/token_resolver_spec.rb +0 -165
  137. data/spec/parser/source_parser_spec.rb +0 -727
  138. data/spec/parser/tag_parsing_spec.rb +0 -17
  139. data/spec/rake/yardoc_task_spec.rb +0 -118
  140. data/spec/registry_resolver_spec.rb +0 -15
  141. data/spec/registry_spec.rb +0 -463
  142. data/spec/registry_store_spec.rb +0 -327
  143. data/spec/rubygems/doc_manager_spec.rb +0 -112
  144. data/spec/serializers/data/serialized_yardoc/checksums +0 -1
  145. data/spec/serializers/data/serialized_yardoc/objects/Foo.dat +0 -0
  146. data/spec/serializers/data/serialized_yardoc/objects/Foo/bar_i.dat +0 -0
  147. data/spec/serializers/data/serialized_yardoc/objects/Foo/baz_i.dat +0 -0
  148. data/spec/serializers/data/serialized_yardoc/objects/root.dat +0 -0
  149. data/spec/serializers/data/serialized_yardoc/proxy_types +0 -2
  150. data/spec/serializers/file_system_serializer_spec.rb +0 -145
  151. data/spec/serializers/spec_helper.rb +0 -2
  152. data/spec/serializers/yardoc_serializer_spec.rb +0 -90
  153. data/spec/server/adapter_spec.rb +0 -39
  154. data/spec/server/commands/base_spec.rb +0 -91
  155. data/spec/server/commands/library_command_spec.rb +0 -39
  156. data/spec/server/doc_server_helper_spec.rb +0 -72
  157. data/spec/server/doc_server_serializer_spec.rb +0 -60
  158. data/spec/server/rack_adapter_spec.rb +0 -21
  159. data/spec/server/router_spec.rb +0 -123
  160. data/spec/server/spec_helper.rb +0 -22
  161. data/spec/server/static_caching_spec.rb +0 -47
  162. data/spec/server/webrick_servlet_spec.rb +0 -20
  163. data/spec/server_spec.rb +0 -19
  164. data/spec/spec_helper.rb +0 -212
  165. data/spec/tags/default_factory_spec.rb +0 -168
  166. data/spec/tags/default_tag_spec.rb +0 -11
  167. data/spec/tags/directives_spec.rb +0 -463
  168. data/spec/tags/library_spec.rb +0 -48
  169. data/spec/tags/overload_tag_spec.rb +0 -53
  170. data/spec/tags/ref_tag_list_spec.rb +0 -53
  171. data/spec/tags/types_explainer_spec.rb +0 -203
  172. data/spec/templates/class_spec.rb +0 -45
  173. data/spec/templates/constant_spec.rb +0 -41
  174. data/spec/templates/engine_spec.rb +0 -131
  175. data/spec/templates/examples/class001.html +0 -308
  176. data/spec/templates/examples/class001.txt +0 -36
  177. data/spec/templates/examples/class002.html +0 -39
  178. data/spec/templates/examples/constant001.txt +0 -25
  179. data/spec/templates/examples/constant002.txt +0 -7
  180. data/spec/templates/examples/constant003.txt +0 -11
  181. data/spec/templates/examples/method001.html +0 -137
  182. data/spec/templates/examples/method001.txt +0 -35
  183. data/spec/templates/examples/method002.html +0 -91
  184. data/spec/templates/examples/method002.txt +0 -20
  185. data/spec/templates/examples/method003.html +0 -165
  186. data/spec/templates/examples/method003.txt +0 -45
  187. data/spec/templates/examples/method004.html +0 -48
  188. data/spec/templates/examples/method004.txt +0 -10
  189. data/spec/templates/examples/method005.html +0 -105
  190. data/spec/templates/examples/method005.txt +0 -33
  191. data/spec/templates/examples/method006.html +0 -108
  192. data/spec/templates/examples/method006.txt +0 -20
  193. data/spec/templates/examples/module001.dot +0 -33
  194. data/spec/templates/examples/module001.html +0 -833
  195. data/spec/templates/examples/module001.txt +0 -33
  196. data/spec/templates/examples/module002.html +0 -341
  197. data/spec/templates/examples/module003.html +0 -202
  198. data/spec/templates/examples/module004.html +0 -394
  199. data/spec/templates/examples/module005.html +0 -82
  200. data/spec/templates/examples/tag001.txt +0 -82
  201. data/spec/templates/helpers/base_helper_spec.rb +0 -171
  202. data/spec/templates/helpers/html_helper_spec.rb +0 -666
  203. data/spec/templates/helpers/html_syntax_highlight_helper_spec.rb +0 -65
  204. data/spec/templates/helpers/markup/rdoc_markup_spec.rb +0 -84
  205. data/spec/templates/helpers/markup_helper_spec.rb +0 -136
  206. data/spec/templates/helpers/method_helper_spec.rb +0 -107
  207. data/spec/templates/helpers/module_helper_spec.rb +0 -35
  208. data/spec/templates/helpers/shared_signature_examples.rb +0 -126
  209. data/spec/templates/helpers/text_helper_spec.rb +0 -65
  210. data/spec/templates/markup_processor_integrations/asciidoctor_spec.rb +0 -60
  211. data/spec/templates/markup_processor_integrations/integration_spec_helper.rb +0 -50
  212. data/spec/templates/markup_processor_integrations/rdoc_markdown_spec.rb +0 -48
  213. data/spec/templates/markup_processor_integrations/rdoc_spec.rb +0 -39
  214. data/spec/templates/markup_processor_integrations/redcarpet_spec.rb +0 -64
  215. data/spec/templates/markup_processor_integrations/redcloth_spec.rb +0 -64
  216. data/spec/templates/method_spec.rb +0 -118
  217. data/spec/templates/module_spec.rb +0 -203
  218. data/spec/templates/onefile_spec.rb +0 -66
  219. data/spec/templates/section_spec.rb +0 -144
  220. data/spec/templates/spec_helper.rb +0 -76
  221. data/spec/templates/tag_spec.rb +0 -52
  222. data/spec/templates/template_spec.rb +0 -410
  223. data/spec/verifier_spec.rb +0 -106
@@ -291,7 +291,7 @@ module YARD
291
291
  def load_checksums
292
292
  return unless File.file?(checksums_path)
293
293
  lines = File.readlines(checksums_path).map do |line|
294
- line.strip.split(/\s+/)
294
+ line.strip.rpartition(' ').tap { |p| p.delete_at(1) }
295
295
  end
296
296
  @checksums = Hash[lines]
297
297
  end
@@ -81,9 +81,13 @@ module YARD
81
81
  if provider.to_s == 'RDiscount'
82
82
  provider.new(text, :autolink).to_html
83
83
  elsif provider.to_s == 'RedcarpetCompat'
84
- provider.new(text, :no_intraemphasis, :gh_blockcode,
85
- :fenced_code, :autolink, :tables,
86
- :lax_spacing).to_html
84
+ provider.new(text, :autolink,
85
+ :fenced_code,
86
+ :gh_blockcode,
87
+ :lax_spacing,
88
+ :tables,
89
+ :with_toc_data,
90
+ :no_intraemphasis).to_html
87
91
  else
88
92
  provider.new(text).to_html
89
93
  end
@@ -316,6 +320,9 @@ module YARD
316
320
  link = url_for(obj, anchor, relative)
317
321
  link = link ? link_url(link, title, :title => h("#{obj.title} (#{obj.type})")) : title
318
322
  "<span class='object_link'>" + link + "</span>"
323
+ rescue Parser::UndocumentableError
324
+ log.warn "The namespace of link #{obj.inspect} is a constant or invalid."
325
+ title || obj.to_s
319
326
  end
320
327
 
321
328
  # (see BaseHelper#link_url)
@@ -34,16 +34,17 @@ module YARD
34
34
  class RDocMarkup
35
35
  attr_accessor :from_path
36
36
 
37
+ @@mutex = Mutex.new
37
38
  @@formatter = nil
38
39
  @@markup = nil
39
- @@mutex = nil
40
40
 
41
41
  def initialize(text)
42
42
  @text = text
43
43
 
44
- @@formatter ||= RDocMarkupToHtml.new
45
- @@markup ||= MARKUP.new
46
- @@mutex ||= Mutex.new
44
+ @@mutex.synchronize do
45
+ @@formatter ||= RDocMarkupToHtml.new
46
+ @@markup ||= MARKUP.new
47
+ end
47
48
  end
48
49
 
49
50
  def to_html
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module YARD
5
- VERSION = '0.9.24'
5
+ VERSION = '0.9.25'
6
6
  end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Script to generate the Error class name map in:
4
+ # lib/yard/handlers/c/base.rb
5
+
6
+ require 'open-uri'
7
+ require 'stringio'
8
+
9
+ desc 'Update the error class names map'
10
+ task :update_error_map do
11
+
12
+ ERROR_C_URL = 'https://raw.githubusercontent.com/ruby/ruby/master/error.c'
13
+
14
+ INIT_MATCH = /void\s+Init_Exception\(void\)\s*\{(.+?)^\}/m
15
+ NAME_MATCH = /(\w+)\s*=\s*rb_define_class\("([^"]+)"/
16
+
17
+ $stderr.puts "Downloading #{ERROR_C_URL} ..."
18
+ content = open(ERROR_C_URL) { |io| io.read }
19
+
20
+ $stderr.puts "Extracting class names ..."
21
+ init_source = content.match(INIT_MATCH).captures.first
22
+ map = init_source.scan(NAME_MATCH).sort_by { |key, value| key }
23
+
24
+ $stderr.puts "Generating new lookup table ..."
25
+ indent = ' ' * 4
26
+ source = StringIO.new
27
+ source.puts "#{indent}ERROR_CLASS_NAMES = {"
28
+ map.each do |variable, name|
29
+ source.puts "#{indent} '#{variable}' => '#{name}',"
30
+ end
31
+ source.puts "#{indent}}"
32
+
33
+ $stderr.puts source.string
34
+
35
+ $stderr.puts "Patching 'lib/yard/handlers/c/base.rb' ..."
36
+ CLASS_NAME_MAP_MATCH = /^\s+ERROR_CLASS_NAMES = {[^}]+}/
37
+
38
+ PROJECT_PATH = File.expand_path('..', __dir__)
39
+ C_BASE_HANDLER = File.join(PROJECT_PATH, 'lib/yard/handlers/c/base.rb')
40
+
41
+ File.open(C_BASE_HANDLER, 'r+') { |file|
42
+ content = file.read
43
+ # .rstrip is added to avoid adding new empty lines due to the new lines
44
+ # added by `.puts` when building the string.
45
+ content.gsub!(CLASS_NAME_MAP_MATCH, source.string.rstrip)
46
+ file.rewind
47
+ file.truncate(0)
48
+ file.write(content)
49
+ }
50
+
51
+ $stderr.puts "Done!"
52
+
53
+ end
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
  s.email = "lsegal@soen.ca"
17
17
  s.homepage = "http://yardoc.org"
18
18
  s.platform = Gem::Platform::RUBY
19
- s.files = `git ls-files`.strip.split(/\s+/)
19
+ s.files = `git ls-files`.strip.split(/\s+/).reject {|f| f.match(%r{^spec/}) }
20
20
  s.require_paths = ['lib']
21
21
  s.executables = ['yard', 'yardoc', 'yri']
22
22
  s.license = 'MIT' if s.respond_to?(:license=)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yard
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.24
4
+ version: 0.9.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Loren Segal
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-08 00:00:00.000000000 Z
11
+ date: 2020-05-03 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: |2
14
14
  YARD is a documentation generation tool for the Ruby programming language.
@@ -296,211 +296,7 @@ files:
296
296
  - lib/yard/version.rb
297
297
  - po/ja.po
298
298
  - samus.json
299
- - spec/cli/command_parser_spec.rb
300
- - spec/cli/command_spec.rb
301
- - spec/cli/config_spec.rb
302
- - spec/cli/diff_spec.rb
303
- - spec/cli/display_spec.rb
304
- - spec/cli/gems_spec.rb
305
- - spec/cli/graph_spec.rb
306
- - spec/cli/help_spec.rb
307
- - spec/cli/i18n_spec.rb
308
- - spec/cli/list_spec.rb
309
- - spec/cli/markup_types_spec.rb
310
- - spec/cli/server_spec.rb
311
- - spec/cli/stats_spec.rb
312
- - spec/cli/yard_on_yard_spec.rb
313
- - spec/cli/yardoc_spec.rb
314
- - spec/cli/yri_spec.rb
315
- - spec/code_objects/base_spec.rb
316
- - spec/code_objects/class_object_spec.rb
317
- - spec/code_objects/code_object_list_spec.rb
318
- - spec/code_objects/constants_spec.rb
319
- - spec/code_objects/extra_file_object_spec.rb
320
- - spec/code_objects/macro_object_spec.rb
321
- - spec/code_objects/method_object_spec.rb
322
- - spec/code_objects/module_object_spec.rb
323
- - spec/code_objects/namespace_mapper_spec.rb
324
- - spec/code_objects/namespace_object_spec.rb
325
- - spec/code_objects/proxy_spec.rb
326
- - spec/code_objects/spec_helper.rb
327
- - spec/config_spec.rb
328
- - spec/core_ext/array_spec.rb
329
- - spec/core_ext/file_spec.rb
330
- - spec/core_ext/hash_spec.rb
331
- - spec/core_ext/insertion_spec.rb
332
- - spec/core_ext/module_spec.rb
333
- - spec/core_ext/string_spec.rb
334
- - spec/core_ext/symbol_hash_spec.rb
335
- - spec/docstring_parser_spec.rb
336
- - spec/docstring_spec.rb
337
- - spec/handlers/alias_handler_spec.rb
338
- - spec/handlers/attribute_handler_spec.rb
339
- - spec/handlers/base_spec.rb
340
- - spec/handlers/c/alias_handler_spec.rb
341
- - spec/handlers/c/attribute_handler_spec.rb
342
- - spec/handlers/c/class_handler_spec.rb
343
- - spec/handlers/c/constant_handler_spec.rb
344
- - spec/handlers/c/init_handler_spec.rb
345
- - spec/handlers/c/method_handler_spec.rb
346
- - spec/handlers/c/mixin_handler_spec.rb
347
- - spec/handlers/c/module_handler_spec.rb
348
- - spec/handlers/c/override_comment_handler_spec.rb
349
- - spec/handlers/c/path_handler_spec.rb
350
- - spec/handlers/c/spec_helper.rb
351
- - spec/handlers/c/struct_handler_spec.rb
352
- - spec/handlers/class_condition_handler_spec.rb
353
- - spec/handlers/class_handler_spec.rb
354
- - spec/handlers/class_method_handler_shared_examples.rb
355
- - spec/handlers/class_variable_handler_spec.rb
356
- - spec/handlers/constant_handler_spec.rb
357
- - spec/handlers/decorator_handler_methods_spec.rb
358
- - spec/handlers/dsl_handler_spec.rb
359
- - spec/handlers/examples/alias_handler_001.rb.txt
360
- - spec/handlers/examples/attribute_handler_001.rb.txt
361
- - spec/handlers/examples/class_condition_handler_001.rb.txt
362
- - spec/handlers/examples/class_handler_001.rb.txt
363
- - spec/handlers/examples/class_variable_handler_001.rb.txt
364
- - spec/handlers/examples/constant_handler_001.rb.txt
365
- - spec/handlers/examples/dsl_handler_001.rb.txt
366
- - spec/handlers/examples/exception_handler_001.rb.txt
367
- - spec/handlers/examples/extend_handler_001.rb.txt
368
- - spec/handlers/examples/method_condition_handler_001.rb.txt
369
- - spec/handlers/examples/method_handler_001.rb.txt
370
- - spec/handlers/examples/mixin_handler_001.rb.txt
371
- - spec/handlers/examples/module_handler_001.rb.txt
372
- - spec/handlers/examples/private_constant_handler_001.rb.txt
373
- - spec/handlers/examples/process_handler_001.rb.txt
374
- - spec/handlers/examples/visibility_handler_001.rb.txt
375
- - spec/handlers/examples/yield_handler_001.rb.txt
376
- - spec/handlers/exception_handler_spec.rb
377
- - spec/handlers/extend_handler_spec.rb
378
- - spec/handlers/legacy_base_spec.rb
379
- - spec/handlers/method_condition_handler_spec.rb
380
- - spec/handlers/method_handler_spec.rb
381
- - spec/handlers/mixin_handler_spec.rb
382
- - spec/handlers/module_function_handler_spec.rb
383
- - spec/handlers/module_handler_spec.rb
384
- - spec/handlers/private_class_method_handler_spec.rb
385
- - spec/handlers/private_constant_handler_spec.rb
386
- - spec/handlers/processor_spec.rb
387
- - spec/handlers/public_class_method_handler_spec.rb
388
- - spec/handlers/ruby/base_spec.rb
389
- - spec/handlers/ruby/legacy/base_spec.rb
390
- - spec/handlers/spec_helper.rb
391
- - spec/handlers/visibility_handler_spec.rb
392
- - spec/handlers/yield_handler_spec.rb
393
- - spec/i18n/locale_spec.rb
394
- - spec/i18n/message_spec.rb
395
- - spec/i18n/messages_spec.rb
396
- - spec/i18n/pot_generator_spec.rb
397
- - spec/i18n/text_spec.rb
398
- - spec/logging_spec.rb
399
- - spec/options_spec.rb
400
- - spec/parser/base_spec.rb
401
- - spec/parser/c_parser_spec.rb
402
- - spec/parser/examples/array.c.txt
403
- - spec/parser/examples/example1.rb.txt
404
- - spec/parser/examples/extrafile.c.txt
405
- - spec/parser/examples/file.c.txt
406
- - spec/parser/examples/multifile.c.txt
407
- - spec/parser/examples/namespace.cpp.txt
408
- - spec/parser/examples/override.c.txt
409
- - spec/parser/examples/parse_in_order_001.rb.txt
410
- - spec/parser/examples/parse_in_order_002.rb.txt
411
- - spec/parser/examples/tag_handler_001.rb.txt
412
- - spec/parser/ruby/ast_node_spec.rb
413
- - spec/parser/ruby/legacy/statement_list_spec.rb
414
- - spec/parser/ruby/legacy/token_list_spec.rb
415
- - spec/parser/ruby/ruby_parser_spec.rb
416
- - spec/parser/ruby/token_resolver_spec.rb
417
- - spec/parser/source_parser_spec.rb
418
- - spec/parser/tag_parsing_spec.rb
419
- - spec/rake/yardoc_task_spec.rb
420
- - spec/registry_resolver_spec.rb
421
- - spec/registry_spec.rb
422
- - spec/registry_store_spec.rb
423
- - spec/rubygems/doc_manager_spec.rb
424
- - spec/serializers/data/serialized_yardoc/checksums
425
- - spec/serializers/data/serialized_yardoc/objects/Foo.dat
426
- - spec/serializers/data/serialized_yardoc/objects/Foo/bar_i.dat
427
- - spec/serializers/data/serialized_yardoc/objects/Foo/baz_i.dat
428
- - spec/serializers/data/serialized_yardoc/objects/root.dat
429
- - spec/serializers/data/serialized_yardoc/proxy_types
430
- - spec/serializers/file_system_serializer_spec.rb
431
- - spec/serializers/spec_helper.rb
432
- - spec/serializers/yardoc_serializer_spec.rb
433
- - spec/server/adapter_spec.rb
434
- - spec/server/commands/base_spec.rb
435
- - spec/server/commands/library_command_spec.rb
436
- - spec/server/doc_server_helper_spec.rb
437
- - spec/server/doc_server_serializer_spec.rb
438
- - spec/server/rack_adapter_spec.rb
439
- - spec/server/router_spec.rb
440
- - spec/server/spec_helper.rb
441
- - spec/server/static_caching_spec.rb
442
- - spec/server/webrick_servlet_spec.rb
443
- - spec/server_spec.rb
444
- - spec/spec_helper.rb
445
- - spec/tags/default_factory_spec.rb
446
- - spec/tags/default_tag_spec.rb
447
- - spec/tags/directives_spec.rb
448
- - spec/tags/library_spec.rb
449
- - spec/tags/overload_tag_spec.rb
450
- - spec/tags/ref_tag_list_spec.rb
451
- - spec/tags/types_explainer_spec.rb
452
- - spec/templates/class_spec.rb
453
- - spec/templates/constant_spec.rb
454
- - spec/templates/engine_spec.rb
455
- - spec/templates/examples/class001.html
456
- - spec/templates/examples/class001.txt
457
- - spec/templates/examples/class002.html
458
- - spec/templates/examples/constant001.txt
459
- - spec/templates/examples/constant002.txt
460
- - spec/templates/examples/constant003.txt
461
- - spec/templates/examples/method001.html
462
- - spec/templates/examples/method001.txt
463
- - spec/templates/examples/method002.html
464
- - spec/templates/examples/method002.txt
465
- - spec/templates/examples/method003.html
466
- - spec/templates/examples/method003.txt
467
- - spec/templates/examples/method004.html
468
- - spec/templates/examples/method004.txt
469
- - spec/templates/examples/method005.html
470
- - spec/templates/examples/method005.txt
471
- - spec/templates/examples/method006.html
472
- - spec/templates/examples/method006.txt
473
- - spec/templates/examples/module001.dot
474
- - spec/templates/examples/module001.html
475
- - spec/templates/examples/module001.txt
476
- - spec/templates/examples/module002.html
477
- - spec/templates/examples/module003.html
478
- - spec/templates/examples/module004.html
479
- - spec/templates/examples/module005.html
480
- - spec/templates/examples/tag001.txt
481
- - spec/templates/helpers/base_helper_spec.rb
482
- - spec/templates/helpers/html_helper_spec.rb
483
- - spec/templates/helpers/html_syntax_highlight_helper_spec.rb
484
- - spec/templates/helpers/markup/rdoc_markup_spec.rb
485
- - spec/templates/helpers/markup_helper_spec.rb
486
- - spec/templates/helpers/method_helper_spec.rb
487
- - spec/templates/helpers/module_helper_spec.rb
488
- - spec/templates/helpers/shared_signature_examples.rb
489
- - spec/templates/helpers/text_helper_spec.rb
490
- - spec/templates/markup_processor_integrations/asciidoctor_spec.rb
491
- - spec/templates/markup_processor_integrations/integration_spec_helper.rb
492
- - spec/templates/markup_processor_integrations/rdoc_markdown_spec.rb
493
- - spec/templates/markup_processor_integrations/rdoc_spec.rb
494
- - spec/templates/markup_processor_integrations/redcarpet_spec.rb
495
- - spec/templates/markup_processor_integrations/redcloth_spec.rb
496
- - spec/templates/method_spec.rb
497
- - spec/templates/module_spec.rb
498
- - spec/templates/onefile_spec.rb
499
- - spec/templates/section_spec.rb
500
- - spec/templates/spec_helper.rb
501
- - spec/templates/tag_spec.rb
502
- - spec/templates/template_spec.rb
503
- - spec/verifier_spec.rb
299
+ - tasks/update_error_map.rake
504
300
  - templates/default/class/dot/setup.rb
505
301
  - templates/default/class/dot/superklass.erb
506
302
  - templates/default/class/html/constructor_details.erb
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe YARD::CLI::CommandParser do
4
- describe "#run" do
5
- before do
6
- @cmd = CLI::CommandParser.new
7
- end
8
-
9
- it "shows help if --help is provided" do
10
- command = double(:command)
11
- expect(command).to receive(:run).with('--help')
12
- CLI::CommandParser.commands[:foo] = command
13
- @cmd.class.default_command = :foo
14
- @cmd.run(*%w(foo --help))
15
- end
16
-
17
- it "uses default command if first argument is a switch" do
18
- command = double(:command)
19
- expect(command).to receive(:run).with('--a', 'b', 'c')
20
- CLI::CommandParser.commands[:foo] = command
21
- @cmd.class.default_command = :foo
22
- @cmd.run(*%w(--a b c))
23
- end
24
-
25
- it "uses default command if no arguments are provided" do
26
- command = double(:command)
27
- expect(command).to receive(:run)
28
- CLI::CommandParser.commands[:foo] = command
29
- @cmd.class.default_command = :foo
30
- @cmd.run
31
- end
32
-
33
- it "lists commands if command is not found" do
34
- expect(@cmd).to receive(:list_commands)
35
- @cmd.run(*%w(unknown_command --args))
36
- end
37
-
38
- it "lists commands if --help is provided as sole argument" do
39
- expect(@cmd).to receive(:list_commands)
40
- @cmd.run(*%w(--help))
41
- end
42
- end
43
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'optparse'
3
-
4
- RSpec.describe YARD::CLI::Command do
5
- describe "#parse_options" do
6
- before do
7
- @options = OptionParser.new
8
- @saw_foo = false
9
- @options.on('--foo') { @saw_foo = true }
10
- end
11
-
12
- def parse(*args)
13
- CLI::Command.new.send(:parse_options, @options, args)
14
- args
15
- end
16
-
17
- it "skips unrecognized options but continue to next option" do
18
- expect(log).to receive(:warn).with(/Unrecognized.*--list/)
19
- expect(log).to receive(:warn).with(/Unrecognized.*--list2/)
20
- parse('--list', '--list2', '--foo')
21
- expect(@saw_foo).to be true
22
- end
23
-
24
- it "skips unrecognized options and any extra non-option arg that follows" do
25
- expect(log).to receive(:warn).with(/Unrecognized.*--list/)
26
- parse('--list', 'foo', '--foo')
27
- expect(@saw_foo).to be true
28
- end
29
-
30
- it "stops retrying to parse at non-switch argument" do
31
- expect(log).to receive(:warn).with(/Unrecognized.*--list/)
32
- args = parse('--list', 'foo', 'foo', 'foo')
33
- expect(args).to eq %w(foo foo)
34
- end
35
- end
36
- end
@@ -1,148 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'yaml'
3
-
4
- RSpec.describe YARD::CLI::Config do
5
- before do
6
- @config = YARD::CLI::Config.new
7
- YARD::Config.options = YARD::Config::DEFAULT_CONFIG_OPTIONS.dup
8
- allow(YARD::Config).to receive(:save)
9
- end
10
-
11
- def run(*args)
12
- @config.run(*args)
13
- end
14
-
15
- describe "Listing configuration" do
16
- it "accepts --list" do
17
- opts = YARD::Config.options
18
- expect(YAML).to receive(:dump).twice.and_return("--- foo\nbar\nbaz")
19
- expect(log).to receive(:puts).twice.with("bar\nbaz")
20
- run
21
- run('--list')
22
- expect(YARD::Config.options).to eq opts
23
- end
24
- end
25
-
26
- describe "Viewing an item" do
27
- it "views item if no value is given" do
28
- YARD::Config.options[:foo] = 'bar'
29
- expect(log).to receive(:puts).with('"bar"')
30
- run 'foo'
31
- expect(YARD::Config.options[:foo]).to eq 'bar'
32
- end
33
- end
34
-
35
- describe "Modifying an item" do
36
- it "accepts --reset to set value" do
37
- YARD::Config.options[:load_plugins] = 'foo'
38
- run('--reset', 'load_plugins')
39
- expect(YARD::Config.options[:load_plugins]).to be false
40
- end
41
-
42
- it "accepts --as-list to force single item as list" do
43
- run('--as-list', 'foo', 'bar')
44
- expect(YARD::Config.options[:foo]).to eq ['bar']
45
- end
46
-
47
- it "accepts --append to append values to existing key" do
48
- YARD::Config.options[:foo] = ['bar']
49
- run('--append', 'foo', 'baz', 'quux')
50
- expect(YARD::Config.options[:foo]).to eq ['bar', 'baz', 'quux']
51
- run('-a', 'foo', 'last')
52
- expect(YARD::Config.options[:foo]).to eq ['bar', 'baz', 'quux', 'last']
53
- end
54
-
55
- it "turns key into list if --append is used on single item" do
56
- YARD::Config.options[:foo] = 'bar'
57
- run('-a', 'foo', 'baz')
58
- expect(YARD::Config.options[:foo]).to eq ['bar', 'baz']
59
- end
60
-
61
- it "modifies item if value is given" do
62
- run('foo', 'xxx')
63
- expect(YARD::Config.options[:foo]).to eq 'xxx'
64
- end
65
-
66
- it "turns list of values into array of values" do
67
- run('foo', 'a', 'b', '1', 'true', 'false')
68
- expect(YARD::Config.options[:foo]).to eq ['a', 'b', 1, true, false]
69
- end
70
-
71
- it "turns number into numeric Ruby type" do
72
- run('foo', '1')
73
- expect(YARD::Config.options[:foo]).to eq 1
74
- end
75
-
76
- it "turns true into TrueClass" do
77
- run('foo', 'true')
78
- expect(YARD::Config.options[:foo]).to be true
79
- end
80
-
81
- it "turns false into FalseClass" do
82
- run('foo', 'false')
83
- expect(YARD::Config.options[:foo]).to be false
84
- end
85
-
86
- it "saves on modification" do
87
- expect(YARD::Config).to receive(:save)
88
- run('foo', 'true')
89
- end
90
- end
91
-
92
- describe "RubyGems hooks" do
93
- require 'rubygems'
94
-
95
- class FakeGemConfig < Hash
96
- attr_accessor :written
97
- def write; @written = true end
98
- def path; nil end
99
- end
100
-
101
- before do
102
- allow(Gem).to receive(:configuration).and_return(FakeGemConfig.new)
103
- end
104
-
105
- it "accepts --gem-install-yri" do
106
- @config.send(:optparse, '--gem-install-yri')
107
- expect(@config.gem_install_cmd).to eq 'yri'
108
- end
109
-
110
- it "accepts --gem-install-yard" do
111
- @config.send(:optparse, '--gem-install-yard')
112
- expect(@config.gem_install_cmd).to eq 'yard'
113
- end
114
-
115
- it "does not change back to yri if yard was specified" do
116
- @config.send(:optparse, '--gem-install-yard', '--gem-install-yri')
117
- expect(@config.gem_install_cmd).to eq 'yard'
118
- end
119
-
120
- it "ignores actual config options" do
121
- run('--gem-install-yri', 'foo', 'true')
122
- expect(YARD::Config).not_to receive(:save)
123
- end
124
-
125
- it "updates configuration as :gem if no configuration exists" do
126
- run('--gem-install-yri')
127
- expect(Gem.configuration[:gem]).to eq "--document=yri"
128
- expect(Gem.configuration.written).to eq true
129
- end
130
-
131
- [:install, "install", :gem, "gem"].each do |type|
132
- it "finds existing config in #{type.inspect} and updates that line without changing anything else" do
133
- Gem.configuration[type] = "--opts x"
134
- run('--gem-install-yri')
135
- expect(Gem.configuration[type]).to eq "--opts x --document=yri"
136
- ([:install, "install", :gem, "gem"] - [type]).each do |other|
137
- expect(Gem.configuration[other]).to eq nil
138
- end
139
- end
140
- end
141
-
142
- it "scrubs --document values from existing config" do
143
- Gem.configuration["gem"] = "--document=yri,ri --no-document --opts x"
144
- run('--gem-install-yri')
145
- expect(Gem.configuration["gem"]).to eq "--opts x --document=yri"
146
- end
147
- end
148
- end