rubygems-update 3.3.18 → 3.3.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (388) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +65 -0
  3. data/Manifest.txt +11 -0
  4. data/bin/gem +2 -2
  5. data/bin/update_rubygems +4 -4
  6. data/bundler/CHANGELOG.md +100 -0
  7. data/bundler/UPGRADING.md +11 -4
  8. data/bundler/bundler.gemspec +6 -8
  9. data/bundler/lib/bundler/build_metadata.rb +2 -2
  10. data/bundler/lib/bundler/cli/common.rb +1 -0
  11. data/bundler/lib/bundler/cli/install.rb +5 -2
  12. data/bundler/lib/bundler/cli/outdated.rb +12 -3
  13. data/bundler/lib/bundler/cli/platform.rb +1 -1
  14. data/bundler/lib/bundler/cli.rb +7 -4
  15. data/bundler/lib/bundler/current_ruby.rb +14 -5
  16. data/bundler/lib/bundler/definition.rb +102 -31
  17. data/bundler/lib/bundler/dependency.rb +18 -85
  18. data/bundler/lib/bundler/dsl.rb +2 -2
  19. data/bundler/lib/bundler/endpoint_specification.rb +2 -13
  20. data/bundler/lib/bundler/feature_flag.rb +0 -1
  21. data/bundler/lib/bundler/fetcher.rb +6 -6
  22. data/bundler/lib/bundler/gem_helpers.rb +7 -1
  23. data/bundler/lib/bundler/gem_version_promoter.rb +8 -18
  24. data/bundler/lib/bundler/index.rb +10 -12
  25. data/bundler/lib/bundler/injector.rb +2 -1
  26. data/bundler/lib/bundler/inline.rb +1 -1
  27. data/bundler/lib/bundler/installer/standalone.rb +1 -1
  28. data/bundler/lib/bundler/installer.rb +14 -12
  29. data/bundler/lib/bundler/lazy_specification.rb +30 -23
  30. data/bundler/lib/bundler/lockfile_generator.rb +1 -1
  31. data/bundler/lib/bundler/man/bundle-add.1 +6 -2
  32. data/bundler/lib/bundler/man/bundle-add.1.ronn +4 -1
  33. data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
  34. data/bundler/lib/bundler/man/bundle-cache.1 +7 -1
  35. data/bundler/lib/bundler/man/bundle-cache.1.ronn +7 -0
  36. data/bundler/lib/bundler/man/bundle-check.1 +1 -1
  37. data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
  38. data/bundler/lib/bundler/man/bundle-config.1 +25 -6
  39. data/bundler/lib/bundler/man/bundle-config.1.ronn +16 -6
  40. data/bundler/lib/bundler/man/bundle-console.1 +53 -0
  41. data/bundler/lib/bundler/man/bundle-console.1.ronn +44 -0
  42. data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
  43. data/bundler/lib/bundler/man/bundle-exec.1 +2 -2
  44. data/bundler/lib/bundler/man/bundle-exec.1.ronn +1 -1
  45. data/bundler/lib/bundler/man/bundle-gem.1 +1 -1
  46. data/bundler/lib/bundler/man/bundle-help.1 +13 -0
  47. data/bundler/lib/bundler/man/bundle-help.1.ronn +12 -0
  48. data/bundler/lib/bundler/man/bundle-info.1 +1 -1
  49. data/bundler/lib/bundler/man/bundle-init.1 +1 -1
  50. data/bundler/lib/bundler/man/bundle-inject.1 +5 -2
  51. data/bundler/lib/bundler/man/bundle-inject.1.ronn +3 -1
  52. data/bundler/lib/bundler/man/bundle-install.1 +5 -1
  53. data/bundler/lib/bundler/man/bundle-install.1.ronn +6 -0
  54. data/bundler/lib/bundler/man/bundle-list.1 +1 -1
  55. data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
  56. data/bundler/lib/bundler/man/bundle-open.1 +1 -1
  57. data/bundler/lib/bundler/man/bundle-outdated.1 +1 -1
  58. data/bundler/lib/bundler/man/bundle-platform.1 +16 -6
  59. data/bundler/lib/bundler/man/bundle-platform.1.ronn +14 -7
  60. data/bundler/lib/bundler/man/bundle-plugin.1 +81 -0
  61. data/bundler/lib/bundler/man/bundle-plugin.1.ronn +59 -0
  62. data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
  63. data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
  64. data/bundler/lib/bundler/man/bundle-show.1 +1 -1
  65. data/bundler/lib/bundler/man/bundle-update.1 +1 -1
  66. data/bundler/lib/bundler/man/bundle-version.1 +35 -0
  67. data/bundler/lib/bundler/man/bundle-version.1.ronn +24 -0
  68. data/bundler/lib/bundler/man/bundle-viz.1 +4 -1
  69. data/bundler/lib/bundler/man/bundle-viz.1.ronn +2 -0
  70. data/bundler/lib/bundler/man/bundle.1 +15 -10
  71. data/bundler/lib/bundler/man/bundle.1.ronn +12 -7
  72. data/bundler/lib/bundler/man/gemfile.5 +23 -47
  73. data/bundler/lib/bundler/man/gemfile.5.ronn +32 -43
  74. data/bundler/lib/bundler/man/index.txt +4 -0
  75. data/bundler/lib/bundler/match_metadata.rb +13 -0
  76. data/bundler/lib/bundler/match_remote_metadata.rb +29 -0
  77. data/bundler/lib/bundler/plugin.rb +2 -0
  78. data/bundler/lib/bundler/remote_specification.rb +6 -11
  79. data/bundler/lib/bundler/resolver/base.rb +50 -0
  80. data/bundler/lib/bundler/resolver/spec_group.rb +11 -8
  81. data/bundler/lib/bundler/resolver.rb +95 -90
  82. data/bundler/lib/bundler/ruby_dsl.rb +1 -1
  83. data/bundler/lib/bundler/ruby_version.rb +5 -5
  84. data/bundler/lib/bundler/rubygems_ext.rb +52 -1
  85. data/bundler/lib/bundler/rubygems_gem_installer.rb +19 -12
  86. data/bundler/lib/bundler/settings.rb +1 -1
  87. data/bundler/lib/bundler/source/metadata.rb +1 -1
  88. data/bundler/lib/bundler/source_list.rb +4 -0
  89. data/bundler/lib/bundler/spec_set.rb +48 -33
  90. data/bundler/lib/bundler/version.rb +1 -1
  91. data/bundler/lib/bundler.rb +3 -3
  92. data/lib/rubygems/available_set.rb +3 -3
  93. data/lib/rubygems/basic_specification.rb +4 -4
  94. data/lib/rubygems/command.rb +25 -25
  95. data/lib/rubygems/command_manager.rb +9 -9
  96. data/lib/rubygems/commands/build_command.rb +8 -8
  97. data/lib/rubygems/commands/cert_command.rb +33 -33
  98. data/lib/rubygems/commands/check_command.rb +20 -20
  99. data/lib/rubygems/commands/cleanup_command.rb +17 -17
  100. data/lib/rubygems/commands/contents_command.rb +13 -13
  101. data/lib/rubygems/commands/dependency_command.rb +16 -16
  102. data/lib/rubygems/commands/environment_command.rb +5 -5
  103. data/lib/rubygems/commands/fetch_command.rb +8 -8
  104. data/lib/rubygems/commands/generate_index_command.rb +17 -17
  105. data/lib/rubygems/commands/help_command.rb +3 -3
  106. data/lib/rubygems/commands/info_command.rb +3 -3
  107. data/lib/rubygems/commands/install_command.rb +20 -20
  108. data/lib/rubygems/commands/list_command.rb +3 -3
  109. data/lib/rubygems/commands/lock_command.rb +4 -4
  110. data/lib/rubygems/commands/mirror_command.rb +3 -3
  111. data/lib/rubygems/commands/open_command.rb +9 -9
  112. data/lib/rubygems/commands/outdated_command.rb +5 -5
  113. data/lib/rubygems/commands/owner_command.rb +11 -11
  114. data/lib/rubygems/commands/pristine_command.rb +36 -36
  115. data/lib/rubygems/commands/push_command.rb +8 -8
  116. data/lib/rubygems/commands/query_command.rb +8 -8
  117. data/lib/rubygems/commands/rdoc_command.rb +17 -17
  118. data/lib/rubygems/commands/search_command.rb +3 -3
  119. data/lib/rubygems/commands/server_command.rb +3 -3
  120. data/lib/rubygems/commands/setup_command.rb +96 -106
  121. data/lib/rubygems/commands/signin_command.rb +9 -9
  122. data/lib/rubygems/commands/signout_command.rb +7 -7
  123. data/lib/rubygems/commands/sources_command.rb +21 -21
  124. data/lib/rubygems/commands/specification_command.rb +13 -13
  125. data/lib/rubygems/commands/stale_command.rb +2 -2
  126. data/lib/rubygems/commands/uninstall_command.rb +40 -40
  127. data/lib/rubygems/commands/unpack_command.rb +12 -12
  128. data/lib/rubygems/commands/update_command.rb +40 -56
  129. data/lib/rubygems/commands/which_command.rb +7 -7
  130. data/lib/rubygems/commands/yank_command.rb +11 -11
  131. data/lib/rubygems/config_file.rb +21 -21
  132. data/lib/rubygems/core_ext/kernel_gem.rb +1 -1
  133. data/lib/rubygems/core_ext/kernel_require.rb +1 -1
  134. data/lib/rubygems/core_ext/kernel_warn.rb +1 -1
  135. data/lib/rubygems/core_ext/tcpsocket_init.rb +1 -1
  136. data/lib/rubygems/defaults.rb +16 -16
  137. data/lib/rubygems/dependency.rb +9 -9
  138. data/lib/rubygems/dependency_installer.rb +13 -13
  139. data/lib/rubygems/dependency_list.rb +6 -6
  140. data/lib/rubygems/doctor.rb +18 -18
  141. data/lib/rubygems/errors.rb +2 -2
  142. data/lib/rubygems/exceptions.rb +5 -5
  143. data/lib/rubygems/ext/build_error.rb +1 -1
  144. data/lib/rubygems/ext/builder.rb +16 -16
  145. data/lib/rubygems/ext/cargo_builder.rb +7 -7
  146. data/lib/rubygems/ext/cmake_builder.rb +2 -2
  147. data/lib/rubygems/ext/configure_builder.rb +1 -1
  148. data/lib/rubygems/ext/ext_conf_builder.rb +8 -8
  149. data/lib/rubygems/ext/rake_builder.rb +3 -3
  150. data/lib/rubygems/ext.rb +7 -7
  151. data/lib/rubygems/gem_runner.rb +5 -5
  152. data/lib/rubygems/gemcutter_utilities.rb +31 -28
  153. data/lib/rubygems/indexer.rb +27 -27
  154. data/lib/rubygems/install_default_message.rb +2 -2
  155. data/lib/rubygems/install_message.rb +2 -2
  156. data/lib/rubygems/install_update_options.rb +55 -55
  157. data/lib/rubygems/installer.rb +32 -40
  158. data/lib/rubygems/installer_uninstaller_utils.rb +2 -2
  159. data/lib/rubygems/local_remote_options.rb +18 -20
  160. data/lib/rubygems/mock_gem_ui.rb +2 -2
  161. data/lib/rubygems/name_tuple.rb +4 -4
  162. data/lib/rubygems/optparse.rb +1 -1
  163. data/lib/rubygems/package/file_source.rb +2 -2
  164. data/lib/rubygems/package/old.rb +8 -8
  165. data/lib/rubygems/package/tar_header.rb +50 -50
  166. data/lib/rubygems/package/tar_reader/entry.rb +2 -2
  167. data/lib/rubygems/package/tar_reader.rb +1 -1
  168. data/lib/rubygems/package/tar_writer.rb +7 -7
  169. data/lib/rubygems/package.rb +54 -43
  170. data/lib/rubygems/package_task.rb +4 -4
  171. data/lib/rubygems/platform.rb +66 -55
  172. data/lib/rubygems/psych_tree.rb +1 -1
  173. data/lib/rubygems/query_utils.rb +35 -35
  174. data/lib/rubygems/rdoc.rb +2 -2
  175. data/lib/rubygems/remote_fetcher.rb +22 -22
  176. data/lib/rubygems/request/connection_pools.rb +4 -4
  177. data/lib/rubygems/request/http_pool.rb +1 -1
  178. data/lib/rubygems/request.rb +22 -22
  179. data/lib/rubygems/request_set/gem_dependency_api.rb +18 -18
  180. data/lib/rubygems/request_set/lockfile/parser.rb +26 -26
  181. data/lib/rubygems/request_set/lockfile/tokenizer.rb +4 -4
  182. data/lib/rubygems/request_set/lockfile.rb +5 -5
  183. data/lib/rubygems/request_set.rb +17 -17
  184. data/lib/rubygems/requirement.rb +6 -6
  185. data/lib/rubygems/resolver/activation_request.rb +3 -3
  186. data/lib/rubygems/resolver/api_set.rb +4 -4
  187. data/lib/rubygems/resolver/api_specification.rb +6 -6
  188. data/lib/rubygems/resolver/best_set.rb +5 -5
  189. data/lib/rubygems/resolver/conflict.rb +10 -10
  190. data/lib/rubygems/resolver/dependency_request.rb +2 -2
  191. data/lib/rubygems/resolver/git_set.rb +2 -2
  192. data/lib/rubygems/resolver/git_specification.rb +6 -6
  193. data/lib/rubygems/resolver/index_set.rb +3 -3
  194. data/lib/rubygems/resolver/index_specification.rb +6 -5
  195. data/lib/rubygems/resolver/installed_specification.rb +4 -4
  196. data/lib/rubygems/resolver/installer_set.rb +11 -16
  197. data/lib/rubygems/resolver/local_specification.rb +2 -2
  198. data/lib/rubygems/resolver/lock_set.rb +4 -4
  199. data/lib/rubygems/resolver/lock_specification.rb +4 -4
  200. data/lib/rubygems/resolver/molinillo.rb +1 -1
  201. data/lib/rubygems/resolver/specification.rb +1 -1
  202. data/lib/rubygems/resolver/vendor_set.rb +1 -1
  203. data/lib/rubygems/resolver/vendor_specification.rb +3 -3
  204. data/lib/rubygems/resolver.rb +39 -39
  205. data/lib/rubygems/s3_uri_signer.rb +6 -6
  206. data/lib/rubygems/safe_yaml.rb +2 -2
  207. data/lib/rubygems/security/policies.rb +11 -11
  208. data/lib/rubygems/security/policy.rb +18 -18
  209. data/lib/rubygems/security/signer.rb +5 -5
  210. data/lib/rubygems/security/trust_dir.rb +3 -3
  211. data/lib/rubygems/security.rb +28 -28
  212. data/lib/rubygems/security_option.rb +5 -5
  213. data/lib/rubygems/source/git.rb +21 -21
  214. data/lib/rubygems/source/installed.rb +1 -1
  215. data/lib/rubygems/source/local.rb +2 -2
  216. data/lib/rubygems/source/specific_file.rb +1 -1
  217. data/lib/rubygems/source.rb +16 -16
  218. data/lib/rubygems/spec_fetcher.rb +9 -9
  219. data/lib/rubygems/specification.rb +63 -62
  220. data/lib/rubygems/specification_policy.rb +15 -15
  221. data/lib/rubygems/stub_specification.rb +5 -5
  222. data/lib/rubygems/tsort.rb +1 -1
  223. data/lib/rubygems/uninstaller.rb +18 -18
  224. data/lib/rubygems/uri.rb +4 -4
  225. data/lib/rubygems/uri_formatter.rb +1 -1
  226. data/lib/rubygems/user_interaction.rb +33 -19
  227. data/lib/rubygems/util/licenses.rb +3 -3
  228. data/lib/rubygems/util.rb +10 -10
  229. data/lib/rubygems/validator.rb +5 -5
  230. data/lib/rubygems/version.rb +15 -9
  231. data/lib/rubygems/version_option.rb +3 -3
  232. data/lib/rubygems.rb +62 -61
  233. data/rubygems-update.gemspec +2 -2
  234. data/setup.rb +9 -9
  235. data/test/rubygems/helper.rb +132 -134
  236. data/test/rubygems/installer_test_case.rb +13 -13
  237. data/test/rubygems/package/tar_test_case.rb +2 -2
  238. data/test/rubygems/plugin/exception/rubygems_plugin.rb +1 -1
  239. data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +1 -1
  240. data/test/rubygems/rubygems_plugin.rb +2 -2
  241. data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +4 -4
  242. data/test/rubygems/test_bundled_ca.rb +10 -10
  243. data/test/rubygems/test_config.rb +3 -3
  244. data/test/rubygems/test_deprecate.rb +3 -3
  245. data/test/rubygems/test_exit.rb +2 -2
  246. data/test/rubygems/test_gem.rb +342 -342
  247. data/test/rubygems/test_gem_available_set.rb +21 -21
  248. data/test/rubygems/test_gem_bundler_version_finder.rb +1 -1
  249. data/test/rubygems/test_gem_command.rb +44 -44
  250. data/test/rubygems/test_gem_command_manager.rb +29 -29
  251. data/test/rubygems/test_gem_commands_build_command.rb +63 -63
  252. data/test/rubygems/test_gem_commands_cert_command.rb +97 -99
  253. data/test/rubygems/test_gem_commands_check_command.rb +4 -4
  254. data/test/rubygems/test_gem_commands_cleanup_command.rb +40 -40
  255. data/test/rubygems/test_gem_commands_contents_command.rb +27 -27
  256. data/test/rubygems/test_gem_commands_dependency_command.rb +36 -36
  257. data/test/rubygems/test_gem_commands_environment_command.rb +16 -16
  258. data/test/rubygems/test_gem_commands_fetch_command.rb +37 -37
  259. data/test/rubygems/test_gem_commands_generate_index_command.rb +7 -7
  260. data/test/rubygems/test_gem_commands_help_command.rb +13 -13
  261. data/test/rubygems/test_gem_commands_info_command.rb +28 -2
  262. data/test/rubygems/test_gem_commands_install_command.rb +131 -131
  263. data/test/rubygems/test_gem_commands_list_command.rb +4 -4
  264. data/test/rubygems/test_gem_commands_lock_command.rb +10 -10
  265. data/test/rubygems/test_gem_commands_mirror.rb +2 -2
  266. data/test/rubygems/test_gem_commands_open_command.rb +4 -4
  267. data/test/rubygems/test_gem_commands_outdated_command.rb +9 -9
  268. data/test/rubygems/test_gem_commands_owner_command.rb +41 -41
  269. data/test/rubygems/test_gem_commands_pristine_command.rb +92 -92
  270. data/test/rubygems/test_gem_commands_push_command.rb +54 -54
  271. data/test/rubygems/test_gem_commands_query_command.rb +73 -73
  272. data/test/rubygems/test_gem_commands_search_command.rb +2 -2
  273. data/test/rubygems/test_gem_commands_server_command.rb +2 -2
  274. data/test/rubygems/test_gem_commands_setup_command.rb +119 -85
  275. data/test/rubygems/test_gem_commands_signin_command.rb +45 -31
  276. data/test/rubygems/test_gem_commands_signout_command.rb +3 -3
  277. data/test/rubygems/test_gem_commands_sources_command.rb +28 -29
  278. data/test/rubygems/test_gem_commands_specification_command.rb +32 -32
  279. data/test/rubygems/test_gem_commands_stale_command.rb +4 -4
  280. data/test/rubygems/test_gem_commands_uninstall_command.rb +75 -75
  281. data/test/rubygems/test_gem_commands_unpack_command.rb +31 -31
  282. data/test/rubygems/test_gem_commands_update_command.rb +89 -89
  283. data/test/rubygems/test_gem_commands_which_command.rb +6 -6
  284. data/test/rubygems/test_gem_commands_yank_command.rb +40 -40
  285. data/test/rubygems/test_gem_config_file.rb +93 -81
  286. data/test/rubygems/test_gem_dependency.rb +73 -73
  287. data/test/rubygems/test_gem_dependency_installer.rb +165 -165
  288. data/test/rubygems/test_gem_dependency_list.rb +47 -47
  289. data/test/rubygems/test_gem_dependency_resolution_error.rb +4 -4
  290. data/test/rubygems/test_gem_doctor.rb +26 -26
  291. data/test/rubygems/test_gem_ext_builder.rb +59 -59
  292. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.lock +6 -6
  293. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.toml +1 -1
  294. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +8 -8
  295. data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +1 -1
  296. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +6 -6
  297. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +1 -1
  298. data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +8 -8
  299. data/test/rubygems/test_gem_ext_cargo_builder.rb +26 -26
  300. data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +3 -3
  301. data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +23 -23
  302. data/test/rubygems/test_gem_ext_cmake_builder.rb +15 -15
  303. data/test/rubygems/test_gem_ext_configure_builder.rb +13 -13
  304. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +51 -52
  305. data/test/rubygems/test_gem_ext_rake_builder.rb +15 -15
  306. data/test/rubygems/test_gem_gem_runner.rb +7 -7
  307. data/test/rubygems/test_gem_gemcutter_utilities.rb +66 -66
  308. data/test/rubygems/test_gem_impossible_dependencies_error.rb +4 -4
  309. data/test/rubygems/test_gem_indexer.rb +48 -48
  310. data/test/rubygems/test_gem_install_update_options.rb +16 -16
  311. data/test/rubygems/test_gem_installer.rb +303 -300
  312. data/test/rubygems/test_gem_local_remote_options.rb +10 -10
  313. data/test/rubygems/test_gem_name_tuple.rb +4 -4
  314. data/test/rubygems/test_gem_package.rb +228 -206
  315. data/test/rubygems/test_gem_package_old.rb +13 -13
  316. data/test/rubygems/test_gem_package_tar_header.rb +42 -42
  317. data/test/rubygems/test_gem_package_tar_reader.rb +8 -8
  318. data/test/rubygems/test_gem_package_tar_reader_entry.rb +10 -10
  319. data/test/rubygems/test_gem_package_tar_writer.rb +76 -76
  320. data/test/rubygems/test_gem_package_task.rb +18 -18
  321. data/test/rubygems/test_gem_path_support.rb +14 -14
  322. data/test/rubygems/test_gem_platform.rb +298 -227
  323. data/test/rubygems/test_gem_rdoc.rb +14 -14
  324. data/test/rubygems/test_gem_remote_fetcher.rb +149 -149
  325. data/test/rubygems/test_gem_request.rb +55 -55
  326. data/test/rubygems/test_gem_request_connection_pools.rb +29 -29
  327. data/test/rubygems/test_gem_request_set.rb +99 -99
  328. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +204 -206
  329. data/test/rubygems/test_gem_request_set_lockfile.rb +86 -86
  330. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +56 -56
  331. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +62 -62
  332. data/test/rubygems/test_gem_requirement.rb +47 -41
  333. data/test/rubygems/test_gem_resolver.rb +133 -99
  334. data/test/rubygems/test_gem_resolver_activation_request.rb +6 -6
  335. data/test/rubygems/test_gem_resolver_api_set.rb +33 -33
  336. data/test/rubygems/test_gem_resolver_api_specification.rb +47 -47
  337. data/test/rubygems/test_gem_resolver_best_set.rb +22 -22
  338. data/test/rubygems/test_gem_resolver_composed_set.rb +1 -1
  339. data/test/rubygems/test_gem_resolver_conflict.rb +12 -12
  340. data/test/rubygems/test_gem_resolver_dependency_request.rb +15 -15
  341. data/test/rubygems/test_gem_resolver_git_set.rb +21 -21
  342. data/test/rubygems/test_gem_resolver_git_specification.rb +21 -21
  343. data/test/rubygems/test_gem_resolver_index_set.rb +12 -12
  344. data/test/rubygems/test_gem_resolver_index_specification.rb +16 -16
  345. data/test/rubygems/test_gem_resolver_installed_specification.rb +5 -5
  346. data/test/rubygems/test_gem_resolver_installer_set.rb +78 -34
  347. data/test/rubygems/test_gem_resolver_local_specification.rb +7 -7
  348. data/test/rubygems/test_gem_resolver_lock_set.rb +12 -12
  349. data/test/rubygems/test_gem_resolver_lock_specification.rb +17 -17
  350. data/test/rubygems/test_gem_resolver_requirement_list.rb +1 -1
  351. data/test/rubygems/test_gem_resolver_specification.rb +8 -8
  352. data/test/rubygems/test_gem_resolver_vendor_set.rb +6 -6
  353. data/test/rubygems/test_gem_resolver_vendor_specification.rb +10 -10
  354. data/test/rubygems/test_gem_security.rb +67 -67
  355. data/test/rubygems/test_gem_security_policy.rb +62 -62
  356. data/test/rubygems/test_gem_security_signer.rb +28 -28
  357. data/test/rubygems/test_gem_security_trust_dir.rb +4 -4
  358. data/test/rubygems/test_gem_silent_ui.rb +38 -32
  359. data/test/rubygems/test_gem_source.rb +44 -44
  360. data/test/rubygems/test_gem_source_fetch_problem.rb +9 -9
  361. data/test/rubygems/test_gem_source_git.rb +59 -59
  362. data/test/rubygems/test_gem_source_installed.rb +16 -16
  363. data/test/rubygems/test_gem_source_list.rb +5 -5
  364. data/test/rubygems/test_gem_source_local.rb +14 -14
  365. data/test/rubygems/test_gem_source_lock.rb +31 -31
  366. data/test/rubygems/test_gem_source_specific_file.rb +17 -17
  367. data/test/rubygems/test_gem_source_subpath_problem.rb +7 -7
  368. data/test/rubygems/test_gem_source_vendor.rb +13 -13
  369. data/test/rubygems/test_gem_spec_fetcher.rb +72 -72
  370. data/test/rubygems/test_gem_specification.rb +444 -436
  371. data/test/rubygems/test_gem_stream_ui.rb +19 -19
  372. data/test/rubygems/test_gem_stub_specification.rb +32 -32
  373. data/test/rubygems/test_gem_text.rb +1 -1
  374. data/test/rubygems/test_gem_uninstaller.rb +112 -112
  375. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +3 -3
  376. data/test/rubygems/test_gem_uri.rb +4 -4
  377. data/test/rubygems/test_gem_uri_formatter.rb +14 -14
  378. data/test/rubygems/test_gem_util.rb +23 -23
  379. data/test/rubygems/test_gem_validator.rb +8 -8
  380. data/test/rubygems/test_gem_version.rb +22 -15
  381. data/test/rubygems/test_gem_version_option.rb +15 -15
  382. data/test/rubygems/test_kernel.rb +31 -31
  383. data/test/rubygems/test_project_sanity.rb +1 -1
  384. data/test/rubygems/test_remote_fetch_error.rb +6 -6
  385. data/test/rubygems/test_require.rb +43 -43
  386. data/test/rubygems/test_rubygems.rb +8 -8
  387. data/test/rubygems/utilities.rb +19 -19
  388. metadata +14 -3
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems'
4
- require 'rubygems/command'
5
- require 'rubygems/gemcutter_utilities'
2
+ require_relative "helper"
3
+ require "rubygems"
4
+ require "rubygems/command"
5
+ require "rubygems/gemcutter_utilities"
6
6
 
7
7
  class TestGemGemcutterUtilities < Gem::TestCase
8
8
  def setup
@@ -13,17 +13,17 @@ class TestGemGemcutterUtilities < Gem::TestCase
13
13
  # below needed for random testing, class property
14
14
  Gem.configuration.disable_default_gem_server = nil
15
15
 
16
- ENV['RUBYGEMS_HOST'] = nil
17
- ENV['GEM_HOST_OTP_CODE'] = nil
16
+ ENV["RUBYGEMS_HOST"] = nil
17
+ ENV["GEM_HOST_OTP_CODE"] = nil
18
18
  Gem.configuration.rubygems_api_key = nil
19
19
 
20
- @cmd = Gem::Command.new '', 'summary'
20
+ @cmd = Gem::Command.new "", "summary"
21
21
  @cmd.extend Gem::GemcutterUtilities
22
22
  end
23
23
 
24
24
  def teardown
25
- ENV['RUBYGEMS_HOST'] = nil
26
- ENV['GEM_HOST_OTP_CODE'] = nil
25
+ ENV["RUBYGEMS_HOST"] = nil
26
+ ENV["GEM_HOST_OTP_CODE"] = nil
27
27
  Gem.configuration.rubygems_api_key = nil
28
28
 
29
29
  credential_teardown
@@ -33,11 +33,11 @@ class TestGemGemcutterUtilities < Gem::TestCase
33
33
 
34
34
  def test_alternate_key_alternate_host
35
35
  keys = {
36
- :rubygems_api_key => 'KEY',
36
+ :rubygems_api_key => "KEY",
37
37
  "http://rubygems.engineyard.com" => "EYKEY",
38
38
  }
39
39
 
40
- File.open Gem.configuration.credentials_path, 'w' do |f|
40
+ File.open Gem.configuration.credentials_path, "w" do |f|
41
41
  f.write keys.to_yaml
42
42
  end
43
43
 
@@ -45,25 +45,25 @@ class TestGemGemcutterUtilities < Gem::TestCase
45
45
 
46
46
  Gem.configuration.load_api_keys
47
47
 
48
- assert_equal 'EYKEY', @cmd.api_key
48
+ assert_equal "EYKEY", @cmd.api_key
49
49
  end
50
50
 
51
51
  def test_api_key
52
- keys = { :rubygems_api_key => 'KEY' }
52
+ keys = { :rubygems_api_key => "KEY" }
53
53
 
54
- File.open Gem.configuration.credentials_path, 'w' do |f|
54
+ File.open Gem.configuration.credentials_path, "w" do |f|
55
55
  f.write keys.to_yaml
56
56
  end
57
57
 
58
58
  Gem.configuration.load_api_keys
59
59
 
60
- assert_equal 'KEY', @cmd.api_key
60
+ assert_equal "KEY", @cmd.api_key
61
61
  end
62
62
 
63
63
  def test_api_key_override
64
- keys = { :rubygems_api_key => 'KEY', :other => 'OTHER' }
64
+ keys = { :rubygems_api_key => "KEY", :other => "OTHER" }
65
65
 
66
- File.open Gem.configuration.credentials_path, 'w' do |f|
66
+ File.open Gem.configuration.credentials_path, "w" do |f|
67
67
  f.write keys.to_yaml
68
68
  end
69
69
 
@@ -72,28 +72,28 @@ class TestGemGemcutterUtilities < Gem::TestCase
72
72
  @cmd.add_key_option
73
73
  @cmd.handle_options %w[--key other]
74
74
 
75
- assert_equal 'OTHER', @cmd.api_key
75
+ assert_equal "OTHER", @cmd.api_key
76
76
  end
77
77
 
78
78
  def test_host
79
- assert_equal 'https://rubygems.org', @cmd.host
79
+ assert_equal "https://rubygems.org", @cmd.host
80
80
  end
81
81
 
82
82
  def test_host_RUBYGEMS_HOST
83
- ENV['RUBYGEMS_HOST'] = 'https://other.example'
83
+ ENV["RUBYGEMS_HOST"] = "https://other.example"
84
84
 
85
- assert_equal 'https://other.example', @cmd.host
85
+ assert_equal "https://other.example", @cmd.host
86
86
  end
87
87
 
88
88
  def test_host_RUBYGEMS_HOST_empty
89
- ENV['RUBYGEMS_HOST'] = ''
89
+ ENV["RUBYGEMS_HOST"] = ""
90
90
 
91
- assert_equal 'https://rubygems.org', @cmd.host
91
+ assert_equal "https://rubygems.org", @cmd.host
92
92
  end
93
93
 
94
94
  def test_sign_in
95
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
96
- util_sign_in [api_key, 200, 'OK']
95
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
96
+ util_sign_in [api_key, 200, "OK"]
97
97
 
98
98
  assert_match %r{Enter your RubyGems.org credentials.}, @sign_in_ui.output
99
99
  assert @fetcher.last_request["authorization"]
@@ -104,9 +104,9 @@ class TestGemGemcutterUtilities < Gem::TestCase
104
104
  end
105
105
 
106
106
  def test_sign_in_with_host
107
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
107
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
108
108
 
109
- util_sign_in [api_key, 200, 'OK'], 'http://example.com', ['http://example.com']
109
+ util_sign_in [api_key, 200, "OK"], "http://example.com", ["http://example.com"]
110
110
 
111
111
  assert_match "Enter your http://example.com credentials.",
112
112
  @sign_in_ui.output
@@ -114,13 +114,13 @@ class TestGemGemcutterUtilities < Gem::TestCase
114
114
  assert_match %r{Signed in.}, @sign_in_ui.output
115
115
 
116
116
  credentials = load_yaml_file Gem.configuration.credentials_path
117
- assert_equal api_key, credentials['http://example.com']
117
+ assert_equal api_key, credentials["http://example.com"]
118
118
  end
119
119
 
120
120
  def test_sign_in_with_host_nil
121
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
121
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
122
122
 
123
- util_sign_in [api_key, 200, 'OK'], nil, [nil]
123
+ util_sign_in [api_key, 200, "OK"], nil, [nil]
124
124
 
125
125
  assert_match "Enter your RubyGems.org credentials.",
126
126
  @sign_in_ui.output
@@ -132,8 +132,8 @@ class TestGemGemcutterUtilities < Gem::TestCase
132
132
  end
133
133
 
134
134
  def test_sign_in_with_host_ENV
135
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
136
- util_sign_in [api_key, 200, 'OK'], 'http://example.com'
135
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
136
+ util_sign_in [api_key, 200, "OK"], "http://example.com"
137
137
 
138
138
  assert_match "Enter your http://example.com credentials.",
139
139
  @sign_in_ui.output
@@ -141,35 +141,35 @@ class TestGemGemcutterUtilities < Gem::TestCase
141
141
  assert_match %r{Signed in.}, @sign_in_ui.output
142
142
 
143
143
  credentials = load_yaml_file Gem.configuration.credentials_path
144
- assert_equal api_key, credentials['http://example.com']
144
+ assert_equal api_key, credentials["http://example.com"]
145
145
  end
146
146
 
147
147
  def test_sign_in_skips_with_existing_credentials
148
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
148
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
149
149
  Gem.configuration.rubygems_api_key = api_key
150
150
 
151
- util_sign_in [api_key, 200, 'OK']
151
+ util_sign_in [api_key, 200, "OK"]
152
152
 
153
153
  assert_equal "", @sign_in_ui.output
154
154
  end
155
155
 
156
156
  def test_sign_in_skips_with_key_override
157
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
158
- Gem.configuration.api_keys[:KEY] = 'other'
157
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
158
+ Gem.configuration.api_keys[:KEY] = "other"
159
159
  @cmd.options[:key] = :KEY
160
- util_sign_in [api_key, 200, 'OK']
160
+ util_sign_in [api_key, 200, "OK"]
161
161
 
162
162
  assert_equal "", @sign_in_ui.output
163
163
  end
164
164
 
165
165
  def test_sign_in_with_other_credentials_doesnt_overwrite_other_keys
166
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
167
- other_api_key = 'f46dbb18bb6a9c97cdc61b5b85c186a17403cdcbf'
166
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
167
+ other_api_key = "f46dbb18bb6a9c97cdc61b5b85c186a17403cdcbf"
168
168
 
169
- File.open Gem.configuration.credentials_path, 'w' do |f|
169
+ File.open Gem.configuration.credentials_path, "w" do |f|
170
170
  f.write Hash[:other_api_key, other_api_key].to_yaml
171
171
  end
172
- util_sign_in [api_key, 200, 'OK']
172
+ util_sign_in [api_key, 200, "OK"]
173
173
 
174
174
  assert_match %r{Enter your RubyGems.org credentials.}, @sign_in_ui.output
175
175
  assert_match %r{Signed in.}, @sign_in_ui.output
@@ -181,7 +181,7 @@ class TestGemGemcutterUtilities < Gem::TestCase
181
181
 
182
182
  def test_sign_in_with_bad_credentials
183
183
  assert_raise Gem::MockGemUi::TermError do
184
- util_sign_in ['Access Denied.', 403, 'Forbidden']
184
+ util_sign_in ["Access Denied.", 403, "Forbidden"]
185
185
  end
186
186
 
187
187
  assert_match %r{Enter your RubyGems.org credentials.}, @sign_in_ui.output
@@ -189,50 +189,50 @@ class TestGemGemcutterUtilities < Gem::TestCase
189
189
  end
190
190
 
191
191
  def test_signin_with_env_otp_code
192
- ENV['GEM_HOST_OTP_CODE'] = '111111'
193
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
192
+ ENV["GEM_HOST_OTP_CODE"] = "111111"
193
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
194
194
 
195
- util_sign_in [api_key, 200, 'OK']
195
+ util_sign_in [api_key, 200, "OK"]
196
196
 
197
- assert_match 'Signed in with API key:', @sign_in_ui.output
198
- assert_equal '111111', @fetcher.last_request['OTP']
197
+ assert_match "Signed in with API key:", @sign_in_ui.output
198
+ assert_equal "111111", @fetcher.last_request["OTP"]
199
199
  end
200
200
 
201
201
  def test_sign_in_with_correct_otp_code
202
- api_key = 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903'
202
+ api_key = "a5fdbb6ba150cbb83aad2bb2fede64cf040453903"
203
203
  response_fail = "You have enabled multifactor authentication but your request doesn't have the correct OTP code. Please check it and retry."
204
204
 
205
205
  util_sign_in(proc do
206
206
  @call_count ||= 0
207
- (@call_count += 1).odd? ? [response_fail, 401, 'Unauthorized'] : [api_key, 200, 'OK']
207
+ (@call_count += 1).odd? ? [response_fail, 401, "Unauthorized"] : [api_key, 200, "OK"]
208
208
  end, nil, [], "111111\n")
209
209
 
210
- assert_match 'You have enabled multi-factor authentication. Please enter OTP code.', @sign_in_ui.output
211
- assert_match 'Code: ', @sign_in_ui.output
212
- assert_match 'Signed in with API key:', @sign_in_ui.output
213
- assert_equal '111111', @fetcher.last_request['OTP']
210
+ assert_match "You have enabled multi-factor authentication. Please enter OTP code.", @sign_in_ui.output
211
+ assert_match "Code: ", @sign_in_ui.output
212
+ assert_match "Signed in with API key:", @sign_in_ui.output
213
+ assert_equal "111111", @fetcher.last_request["OTP"]
214
214
  end
215
215
 
216
216
  def test_sign_in_with_incorrect_otp_code
217
217
  response = "You have enabled multifactor authentication but your request doesn't have the correct OTP code. Please check it and retry."
218
218
 
219
219
  assert_raise Gem::MockGemUi::TermError do
220
- util_sign_in [response, 401, 'Unauthorized'], nil, [], "111111\n"
220
+ util_sign_in [response, 401, "Unauthorized"], nil, [], "111111\n"
221
221
  end
222
222
 
223
- assert_match 'You have enabled multi-factor authentication. Please enter OTP code.', @sign_in_ui.output
224
- assert_match 'Code: ', @sign_in_ui.output
223
+ assert_match "You have enabled multi-factor authentication. Please enter OTP code.", @sign_in_ui.output
224
+ assert_match "Code: ", @sign_in_ui.output
225
225
  assert_match response, @sign_in_ui.output
226
- assert_equal '111111', @fetcher.last_request['OTP']
226
+ assert_equal "111111", @fetcher.last_request["OTP"]
227
227
  end
228
228
 
229
- def util_sign_in(response, host = nil, args = [], extra_input = '')
230
- email = 'you@example.com'
231
- password = 'secret'
232
- profile_response = [ "mfa: disabled\n" , 200, 'OK']
229
+ def util_sign_in(response, host = nil, args = [], extra_input = "")
230
+ email = "you@example.com"
231
+ password = "secret"
232
+ profile_response = [ "mfa: disabled\n" , 200, "OK"]
233
233
 
234
234
  if host
235
- ENV['RUBYGEMS_HOST'] = host
235
+ ENV["RUBYGEMS_HOST"] = host
236
236
  else
237
237
  host = Gem.host
238
238
  end
@@ -254,13 +254,13 @@ class TestGemGemcutterUtilities < Gem::TestCase
254
254
  end
255
255
 
256
256
  def test_verify_api_key
257
- keys = { :other => 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903' }
258
- File.open Gem.configuration.credentials_path, 'w' do |f|
257
+ keys = { :other => "a5fdbb6ba150cbb83aad2bb2fede64cf040453903" }
258
+ File.open Gem.configuration.credentials_path, "w" do |f|
259
259
  f.write keys.to_yaml
260
260
  end
261
261
  Gem.configuration.load_api_keys
262
262
 
263
- assert_equal 'a5fdbb6ba150cbb83aad2bb2fede64cf040453903',
263
+ assert_equal "a5fdbb6ba150cbb83aad2bb2fede64cf040453903",
264
264
  @cmd.verify_api_key(:other)
265
265
  end
266
266
 
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
2
+ require_relative "helper"
3
3
 
4
4
  class TestGemImpossibleDependenciesError < Gem::TestCase
5
5
  def test_message_conflict
6
- request = dependency_request dep('net-ssh', '>= 2.0.13'), 'rye', '0.9.8'
6
+ request = dependency_request dep("net-ssh", ">= 2.0.13"), "rye", "0.9.8"
7
7
 
8
8
  conflicts = []
9
9
 
@@ -11,9 +11,9 @@ class TestGemImpossibleDependenciesError < Gem::TestCase
11
11
  # requested-by entries, but they are suitable for testing the message.
12
12
  # See #485 to construct a correct conflict.
13
13
  net_ssh_2_2_2 =
14
- dependency_request dep('net-ssh', '>= 2.6.5'), 'net-ssh', '2.2.2', request
14
+ dependency_request dep("net-ssh", ">= 2.6.5"), "net-ssh", "2.2.2", request
15
15
  net_ssh_2_6_5 =
16
- dependency_request dep('net-ssh', '~> 2.2.2'), 'net-ssh', '2.6.5', request
16
+ dependency_request dep("net-ssh", "~> 2.2.2"), "net-ssh", "2.6.5", request
17
17
 
18
18
  conflict1 = Gem::Resolver::Conflict.new \
19
19
  net_ssh_2_6_5, net_ssh_2_6_5.requester
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'helper'
3
- require 'rubygems/indexer'
2
+ require_relative "helper"
3
+ require "rubygems/indexer"
4
4
 
5
5
  class TestGemIndexer < Gem::TestCase
6
6
  def setup
@@ -8,25 +8,25 @@ class TestGemIndexer < Gem::TestCase
8
8
 
9
9
  util_make_gems
10
10
 
11
- @d2_0 = util_spec 'd', '2.0' do |s|
11
+ @d2_0 = util_spec "d", "2.0" do |s|
12
12
  s.date = Gem::Specification::TODAY - 86400 * 3
13
13
  end
14
14
  util_build_gem @d2_0
15
15
 
16
- @d2_0_a = util_spec 'd', '2.0.a'
16
+ @d2_0_a = util_spec "d", "2.0.a"
17
17
  util_build_gem @d2_0_a
18
18
 
19
- @d2_0_b = util_spec 'd', '2.0.b'
19
+ @d2_0_b = util_spec "d", "2.0.b"
20
20
  util_build_gem @d2_0_b
21
21
 
22
- @default = new_default_spec 'default', 2
22
+ @default = new_default_spec "default", 2
23
23
  install_default_gems @default
24
24
 
25
- @indexerdir = File.join(@tempdir, 'indexer')
25
+ @indexerdir = File.join(@tempdir, "indexer")
26
26
 
27
- gems = File.join(@indexerdir, 'gems')
27
+ gems = File.join(@indexerdir, "gems")
28
28
  FileUtils.mkdir_p gems
29
- FileUtils.mv Dir[File.join(@gemhome, "cache", '*.gem')], gems
29
+ FileUtils.mv Dir[File.join(@gemhome, "cache", "*.gem")], gems
30
30
 
31
31
  @indexer = Gem::Indexer.new(@indexerdir)
32
32
  end
@@ -79,7 +79,7 @@ class TestGemIndexer < Gem::TestCase
79
79
  ["pl", Gem::Version.new("1"), "i386-linux"],
80
80
  ["x", Gem::Version.new("1"), "ruby"]]
81
81
 
82
- assert_equal expected, latest_specs, 'latest_specs'
82
+ assert_equal expected, latest_specs, "latest_specs"
83
83
  end
84
84
 
85
85
  def test_generate_index
@@ -87,7 +87,7 @@ class TestGemIndexer < Gem::TestCase
87
87
  @indexer.generate_index
88
88
  end
89
89
 
90
- quickdir = File.join @indexerdir, 'quick'
90
+ quickdir = File.join @indexerdir, "quick"
91
91
  marshal_quickdir = File.join quickdir, "Marshal.#{@marshal_version}"
92
92
 
93
93
  assert_directory_exists quickdir
@@ -114,15 +114,15 @@ class TestGemIndexer < Gem::TestCase
114
114
  @indexer.generate_index
115
115
  end
116
116
 
117
- refute_indexed @indexerdir, 'yaml'
118
- refute_indexed @indexerdir, 'yaml.Z'
117
+ refute_indexed @indexerdir, "yaml"
118
+ refute_indexed @indexerdir, "yaml.Z"
119
119
  refute_indexed @indexerdir, "Marshal.#{@marshal_version}"
120
120
  refute_indexed @indexerdir, "Marshal.#{@marshal_version}.Z"
121
121
 
122
- quickdir = File.join @indexerdir, 'quick'
122
+ quickdir = File.join @indexerdir, "quick"
123
123
  marshal_quickdir = File.join quickdir, "Marshal.#{@marshal_version}"
124
124
 
125
- assert_directory_exists quickdir, 'quickdir should be directory'
125
+ assert_directory_exists quickdir, "quickdir should be directory"
126
126
  assert_directory_exists marshal_quickdir
127
127
 
128
128
  refute_indexed quickdir, "index"
@@ -165,7 +165,7 @@ class TestGemIndexer < Gem::TestCase
165
165
  use_ui @ui do
166
166
  @indexer.generate_index
167
167
  end
168
- quickdir = File.join @indexerdir, 'quick'
168
+ quickdir = File.join @indexerdir, "quick"
169
169
  marshal_quickdir = File.join quickdir, "Marshal.#{@marshal_version}"
170
170
 
171
171
  assert_directory_exists quickdir
@@ -196,7 +196,7 @@ class TestGemIndexer < Gem::TestCase
196
196
  assert_match %r{^Complete$}, @ui.output
197
197
  assert_match %r{^Compressing indices$}, @ui.output
198
198
 
199
- assert_equal '', @ui.error
199
+ assert_equal "", @ui.error
200
200
  end
201
201
 
202
202
  def test_generate_index_specs
@@ -210,30 +210,30 @@ class TestGemIndexer < Gem::TestCase
210
210
  specs = Marshal.load specs_dump
211
211
 
212
212
  expected = [
213
- ['a', Gem::Version.new(1), 'ruby'],
214
- ['a', Gem::Version.new(2), 'ruby'],
215
- ['a_evil', Gem::Version.new(9), 'ruby'],
216
- ['b', Gem::Version.new(2), 'ruby'],
217
- ['c', Gem::Version.new('1.2'), 'ruby'],
218
- ['d', Gem::Version.new('2.0'), 'ruby'],
219
- ['dep_x', Gem::Version.new(1), 'ruby'],
220
- ['pl', Gem::Version.new(1), 'i386-linux'],
221
- ['x', Gem::Version.new(1), 'ruby'],
213
+ ["a", Gem::Version.new(1), "ruby"],
214
+ ["a", Gem::Version.new(2), "ruby"],
215
+ ["a_evil", Gem::Version.new(9), "ruby"],
216
+ ["b", Gem::Version.new(2), "ruby"],
217
+ ["c", Gem::Version.new("1.2"), "ruby"],
218
+ ["d", Gem::Version.new("2.0"), "ruby"],
219
+ ["dep_x", Gem::Version.new(1), "ruby"],
220
+ ["pl", Gem::Version.new(1), "i386-linux"],
221
+ ["x", Gem::Version.new(1), "ruby"],
222
222
  ]
223
223
 
224
224
  assert_equal expected, specs
225
225
 
226
226
  assert_same specs[0].first, specs[1].first,
227
- 'identical names not identical'
227
+ "identical names not identical"
228
228
 
229
229
  assert_same specs[0][1], specs[-1][1],
230
- 'identical versions not identical'
230
+ "identical versions not identical"
231
231
 
232
232
  assert_same specs[0].last, specs[1].last,
233
- 'identical platforms not identical'
233
+ "identical platforms not identical"
234
234
 
235
235
  refute_same specs[1][1], specs[5][1],
236
- 'different versions not different'
236
+ "different versions not different"
237
237
  end
238
238
 
239
239
  def test_generate_index_latest_specs
@@ -247,23 +247,23 @@ class TestGemIndexer < Gem::TestCase
247
247
  latest_specs = Marshal.load latest_specs_dump
248
248
 
249
249
  expected = [
250
- ['a', Gem::Version.new(2), 'ruby'],
251
- ['a_evil', Gem::Version.new(9), 'ruby'],
252
- ['b', Gem::Version.new(2), 'ruby'],
253
- ['c', Gem::Version.new('1.2'), 'ruby'],
254
- ['d', Gem::Version.new('2.0'), 'ruby'],
255
- ['dep_x', Gem::Version.new(1), 'ruby'],
256
- ['pl', Gem::Version.new(1), 'i386-linux'],
257
- ['x', Gem::Version.new(1), 'ruby'],
250
+ ["a", Gem::Version.new(2), "ruby"],
251
+ ["a_evil", Gem::Version.new(9), "ruby"],
252
+ ["b", Gem::Version.new(2), "ruby"],
253
+ ["c", Gem::Version.new("1.2"), "ruby"],
254
+ ["d", Gem::Version.new("2.0"), "ruby"],
255
+ ["dep_x", Gem::Version.new(1), "ruby"],
256
+ ["pl", Gem::Version.new(1), "i386-linux"],
257
+ ["x", Gem::Version.new(1), "ruby"],
258
258
  ]
259
259
 
260
260
  assert_equal expected, latest_specs
261
261
 
262
262
  assert_same latest_specs[0][1], latest_specs[2][1],
263
- 'identical versions not identical'
263
+ "identical versions not identical"
264
264
 
265
265
  assert_same latest_specs[0].last, latest_specs[1].last,
266
- 'identical platforms not identical'
266
+ "identical platforms not identical"
267
267
  end
268
268
 
269
269
  def test_generate_index_prerelease_specs
@@ -276,9 +276,9 @@ class TestGemIndexer < Gem::TestCase
276
276
  prerelease_specs_dump = Gem.read_binary prerelease_specs_path
277
277
  prerelease_specs = Marshal.load prerelease_specs_dump
278
278
 
279
- assert_equal [['a', Gem::Version.new('3.a'), 'ruby'],
280
- ['d', Gem::Version.new('2.0.a'), 'ruby'],
281
- ['d', Gem::Version.new('2.0.b'), 'ruby']],
279
+ assert_equal [["a", Gem::Version.new("3.a"), "ruby"],
280
+ ["d", Gem::Version.new("2.0.a"), "ruby"],
281
+ ["d", Gem::Version.new("2.0.b"), "ruby"]],
282
282
  prerelease_specs
283
283
  end
284
284
 
@@ -288,7 +288,7 @@ class TestGemIndexer < Gem::TestCase
288
288
  def with_system_gems
289
289
  Gem::Specification.reset
290
290
 
291
- sys_gem = util_spec 'systemgem', '1.0'
291
+ sys_gem = util_spec "systemgem", "1.0"
292
292
  util_build_gem sys_gem
293
293
  install_default_gems sys_gem
294
294
  yield
@@ -300,21 +300,21 @@ class TestGemIndexer < Gem::TestCase
300
300
  @indexer.generate_index
301
301
  end
302
302
 
303
- quickdir = File.join @indexerdir, 'quick'
303
+ quickdir = File.join @indexerdir, "quick"
304
304
  marshal_quickdir = File.join quickdir, "Marshal.#{@marshal_version}"
305
305
 
306
306
  assert_directory_exists quickdir
307
307
  assert_directory_exists marshal_quickdir
308
308
 
309
- @d2_1 = util_spec 'd', '2.1'
309
+ @d2_1 = util_spec "d", "2.1"
310
310
  util_build_gem @d2_1
311
311
  @d2_1_tuple = [@d2_1.name, @d2_1.version, @d2_1.original_platform]
312
312
 
313
- @d2_1_a = util_spec 'd', '2.2.a'
313
+ @d2_1_a = util_spec "d", "2.2.a"
314
314
  util_build_gem @d2_1_a
315
315
  @d2_1_a_tuple = [@d2_1_a.name, @d2_1_a.version, @d2_1_a.original_platform]
316
316
 
317
- gems = File.join @indexerdir, 'gems'
317
+ gems = File.join @indexerdir, "gems"
318
318
 
319
319
  FileUtils.mv @d2_1.cache_file, gems
320
320
  FileUtils.mv @d2_1_a.cache_file, gems
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
- require_relative 'installer_test_case'
3
- require 'rubygems/install_update_options'
4
- require 'rubygems/command'
5
- require 'rubygems/dependency_installer'
2
+ require_relative "installer_test_case"
3
+ require "rubygems/install_update_options"
4
+ require "rubygems/command"
5
+ require "rubygems/dependency_installer"
6
6
 
7
7
  class TestGemInstallUpdateOptions < Gem::InstallerTestCase
8
8
  def setup
9
9
  super
10
10
 
11
- @cmd = Gem::Command.new 'dummy', 'dummy',
11
+ @cmd = Gem::Command.new "dummy", "dummy",
12
12
  Gem::DependencyInstaller::DEFAULT_OPTIONS
13
13
  @cmd.extend Gem::InstallUpdateOptions
14
14
  @cmd.add_install_update_options
@@ -38,7 +38,7 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
38
38
  def test_build_root
39
39
  @cmd.handle_options %w[--build-root build_root]
40
40
 
41
- assert_equal File.expand_path('build_root'), @cmd.options[:build_root]
41
+ assert_equal File.expand_path("build_root"), @cmd.options[:build_root]
42
42
  end
43
43
 
44
44
  def test_doc
@@ -92,7 +92,7 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
92
92
  end
93
93
 
94
94
  def test_security_policy
95
- pend 'openssl is missing' unless Gem::HAVE_OPENSSL
95
+ pend "openssl is missing" unless Gem::HAVE_OPENSSL
96
96
 
97
97
  @cmd.handle_options %w[-P HighSecurity]
98
98
 
@@ -100,7 +100,7 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
100
100
  end
101
101
 
102
102
  def test_security_policy_unknown
103
- pend 'openssl is missing' unless Gem::HAVE_OPENSSL
103
+ pend "openssl is missing" unless Gem::HAVE_OPENSSL
104
104
 
105
105
  @cmd.add_install_update_options
106
106
 
@@ -111,7 +111,7 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
111
111
  end
112
112
 
113
113
  def test_user_install_enabled
114
- @spec = quick_gem 'a' do |spec|
114
+ @spec = quick_gem "a" do |spec|
115
115
  util_make_exec spec
116
116
  end
117
117
 
@@ -124,12 +124,12 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
124
124
 
125
125
  @installer = Gem::Installer.at @gem, @cmd.options
126
126
  @installer.install
127
- assert_path_exist File.join(Gem.user_dir, 'gems')
128
- assert_path_exist File.join(Gem.user_dir, 'gems', @spec.full_name)
127
+ assert_path_exist File.join(Gem.user_dir, "gems")
128
+ assert_path_exist File.join(Gem.user_dir, "gems", @spec.full_name)
129
129
  end
130
130
 
131
131
  def test_user_install_disabled_read_only
132
- @spec = quick_gem 'a' do |spec|
132
+ @spec = quick_gem "a" do |spec|
133
133
  util_make_exec spec
134
134
  end
135
135
 
@@ -137,9 +137,9 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
137
137
  @gem = @spec.cache_file
138
138
 
139
139
  if win_platform?
140
- pend('test_user_install_disabled_read_only test skipped on MS Windows')
140
+ pend("test_user_install_disabled_read_only test skipped on MS Windows")
141
141
  elsif Process.uid.zero?
142
- pend('test_user_install_disabled_read_only test skipped in root privilege')
142
+ pend("test_user_install_disabled_read_only test skipped in root privilege")
143
143
  else
144
144
  @cmd.handle_options %w[--no-user-install]
145
145
 
@@ -159,7 +159,7 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
159
159
  end
160
160
 
161
161
  def test_vendor
162
- vendordir(File.join(@tempdir, 'vendor')) do
162
+ vendordir(File.join(@tempdir, "vendor")) do
163
163
  @cmd.handle_options %w[--vendor]
164
164
 
165
165
  assert @cmd.options[:vendor]
@@ -173,7 +173,7 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
173
173
  @cmd.handle_options %w[--vendor]
174
174
  end
175
175
 
176
- assert_equal 'invalid option: --vendor your platform is not supported',
176
+ assert_equal "invalid option: --vendor your platform is not supported",
177
177
  e.message
178
178
 
179
179
  refute @cmd.options[:vendor]