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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +65 -0
- data/Manifest.txt +11 -0
- data/bin/gem +2 -2
- data/bin/update_rubygems +4 -4
- data/bundler/CHANGELOG.md +100 -0
- data/bundler/UPGRADING.md +11 -4
- data/bundler/bundler.gemspec +6 -8
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/cli/common.rb +1 -0
- data/bundler/lib/bundler/cli/install.rb +5 -2
- data/bundler/lib/bundler/cli/outdated.rb +12 -3
- data/bundler/lib/bundler/cli/platform.rb +1 -1
- data/bundler/lib/bundler/cli.rb +7 -4
- data/bundler/lib/bundler/current_ruby.rb +14 -5
- data/bundler/lib/bundler/definition.rb +102 -31
- data/bundler/lib/bundler/dependency.rb +18 -85
- data/bundler/lib/bundler/dsl.rb +2 -2
- data/bundler/lib/bundler/endpoint_specification.rb +2 -13
- data/bundler/lib/bundler/feature_flag.rb +0 -1
- data/bundler/lib/bundler/fetcher.rb +6 -6
- data/bundler/lib/bundler/gem_helpers.rb +7 -1
- data/bundler/lib/bundler/gem_version_promoter.rb +8 -18
- data/bundler/lib/bundler/index.rb +10 -12
- data/bundler/lib/bundler/injector.rb +2 -1
- data/bundler/lib/bundler/inline.rb +1 -1
- data/bundler/lib/bundler/installer/standalone.rb +1 -1
- data/bundler/lib/bundler/installer.rb +14 -12
- data/bundler/lib/bundler/lazy_specification.rb +30 -23
- data/bundler/lib/bundler/lockfile_generator.rb +1 -1
- data/bundler/lib/bundler/man/bundle-add.1 +6 -2
- data/bundler/lib/bundler/man/bundle-add.1.ronn +4 -1
- data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
- data/bundler/lib/bundler/man/bundle-cache.1 +7 -1
- data/bundler/lib/bundler/man/bundle-cache.1.ronn +7 -0
- data/bundler/lib/bundler/man/bundle-check.1 +1 -1
- data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
- data/bundler/lib/bundler/man/bundle-config.1 +25 -6
- data/bundler/lib/bundler/man/bundle-config.1.ronn +16 -6
- data/bundler/lib/bundler/man/bundle-console.1 +53 -0
- data/bundler/lib/bundler/man/bundle-console.1.ronn +44 -0
- data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
- data/bundler/lib/bundler/man/bundle-exec.1 +2 -2
- data/bundler/lib/bundler/man/bundle-exec.1.ronn +1 -1
- data/bundler/lib/bundler/man/bundle-gem.1 +1 -1
- data/bundler/lib/bundler/man/bundle-help.1 +13 -0
- data/bundler/lib/bundler/man/bundle-help.1.ronn +12 -0
- data/bundler/lib/bundler/man/bundle-info.1 +1 -1
- data/bundler/lib/bundler/man/bundle-init.1 +1 -1
- data/bundler/lib/bundler/man/bundle-inject.1 +5 -2
- data/bundler/lib/bundler/man/bundle-inject.1.ronn +3 -1
- data/bundler/lib/bundler/man/bundle-install.1 +5 -1
- data/bundler/lib/bundler/man/bundle-install.1.ronn +6 -0
- data/bundler/lib/bundler/man/bundle-list.1 +1 -1
- data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
- data/bundler/lib/bundler/man/bundle-open.1 +1 -1
- data/bundler/lib/bundler/man/bundle-outdated.1 +1 -1
- data/bundler/lib/bundler/man/bundle-platform.1 +16 -6
- data/bundler/lib/bundler/man/bundle-platform.1.ronn +14 -7
- data/bundler/lib/bundler/man/bundle-plugin.1 +81 -0
- data/bundler/lib/bundler/man/bundle-plugin.1.ronn +59 -0
- data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
- data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
- data/bundler/lib/bundler/man/bundle-show.1 +1 -1
- data/bundler/lib/bundler/man/bundle-update.1 +1 -1
- data/bundler/lib/bundler/man/bundle-version.1 +35 -0
- data/bundler/lib/bundler/man/bundle-version.1.ronn +24 -0
- data/bundler/lib/bundler/man/bundle-viz.1 +4 -1
- data/bundler/lib/bundler/man/bundle-viz.1.ronn +2 -0
- data/bundler/lib/bundler/man/bundle.1 +15 -10
- data/bundler/lib/bundler/man/bundle.1.ronn +12 -7
- data/bundler/lib/bundler/man/gemfile.5 +23 -47
- data/bundler/lib/bundler/man/gemfile.5.ronn +32 -43
- data/bundler/lib/bundler/man/index.txt +4 -0
- data/bundler/lib/bundler/match_metadata.rb +13 -0
- data/bundler/lib/bundler/match_remote_metadata.rb +29 -0
- data/bundler/lib/bundler/plugin.rb +2 -0
- data/bundler/lib/bundler/remote_specification.rb +6 -11
- data/bundler/lib/bundler/resolver/base.rb +50 -0
- data/bundler/lib/bundler/resolver/spec_group.rb +11 -8
- data/bundler/lib/bundler/resolver.rb +95 -90
- data/bundler/lib/bundler/ruby_dsl.rb +1 -1
- data/bundler/lib/bundler/ruby_version.rb +5 -5
- data/bundler/lib/bundler/rubygems_ext.rb +52 -1
- data/bundler/lib/bundler/rubygems_gem_installer.rb +19 -12
- data/bundler/lib/bundler/settings.rb +1 -1
- data/bundler/lib/bundler/source/metadata.rb +1 -1
- data/bundler/lib/bundler/source_list.rb +4 -0
- data/bundler/lib/bundler/spec_set.rb +48 -33
- data/bundler/lib/bundler/version.rb +1 -1
- data/bundler/lib/bundler.rb +3 -3
- data/lib/rubygems/available_set.rb +3 -3
- data/lib/rubygems/basic_specification.rb +4 -4
- data/lib/rubygems/command.rb +25 -25
- data/lib/rubygems/command_manager.rb +9 -9
- data/lib/rubygems/commands/build_command.rb +8 -8
- data/lib/rubygems/commands/cert_command.rb +33 -33
- data/lib/rubygems/commands/check_command.rb +20 -20
- data/lib/rubygems/commands/cleanup_command.rb +17 -17
- data/lib/rubygems/commands/contents_command.rb +13 -13
- data/lib/rubygems/commands/dependency_command.rb +16 -16
- data/lib/rubygems/commands/environment_command.rb +5 -5
- data/lib/rubygems/commands/fetch_command.rb +8 -8
- data/lib/rubygems/commands/generate_index_command.rb +17 -17
- data/lib/rubygems/commands/help_command.rb +3 -3
- data/lib/rubygems/commands/info_command.rb +3 -3
- data/lib/rubygems/commands/install_command.rb +20 -20
- data/lib/rubygems/commands/list_command.rb +3 -3
- data/lib/rubygems/commands/lock_command.rb +4 -4
- data/lib/rubygems/commands/mirror_command.rb +3 -3
- data/lib/rubygems/commands/open_command.rb +9 -9
- data/lib/rubygems/commands/outdated_command.rb +5 -5
- data/lib/rubygems/commands/owner_command.rb +11 -11
- data/lib/rubygems/commands/pristine_command.rb +36 -36
- data/lib/rubygems/commands/push_command.rb +8 -8
- data/lib/rubygems/commands/query_command.rb +8 -8
- data/lib/rubygems/commands/rdoc_command.rb +17 -17
- data/lib/rubygems/commands/search_command.rb +3 -3
- data/lib/rubygems/commands/server_command.rb +3 -3
- data/lib/rubygems/commands/setup_command.rb +96 -106
- data/lib/rubygems/commands/signin_command.rb +9 -9
- data/lib/rubygems/commands/signout_command.rb +7 -7
- data/lib/rubygems/commands/sources_command.rb +21 -21
- data/lib/rubygems/commands/specification_command.rb +13 -13
- data/lib/rubygems/commands/stale_command.rb +2 -2
- data/lib/rubygems/commands/uninstall_command.rb +40 -40
- data/lib/rubygems/commands/unpack_command.rb +12 -12
- data/lib/rubygems/commands/update_command.rb +40 -56
- data/lib/rubygems/commands/which_command.rb +7 -7
- data/lib/rubygems/commands/yank_command.rb +11 -11
- data/lib/rubygems/config_file.rb +21 -21
- data/lib/rubygems/core_ext/kernel_gem.rb +1 -1
- data/lib/rubygems/core_ext/kernel_require.rb +1 -1
- data/lib/rubygems/core_ext/kernel_warn.rb +1 -1
- data/lib/rubygems/core_ext/tcpsocket_init.rb +1 -1
- data/lib/rubygems/defaults.rb +16 -16
- data/lib/rubygems/dependency.rb +9 -9
- data/lib/rubygems/dependency_installer.rb +13 -13
- data/lib/rubygems/dependency_list.rb +6 -6
- data/lib/rubygems/doctor.rb +18 -18
- data/lib/rubygems/errors.rb +2 -2
- data/lib/rubygems/exceptions.rb +5 -5
- data/lib/rubygems/ext/build_error.rb +1 -1
- data/lib/rubygems/ext/builder.rb +16 -16
- data/lib/rubygems/ext/cargo_builder.rb +7 -7
- data/lib/rubygems/ext/cmake_builder.rb +2 -2
- data/lib/rubygems/ext/configure_builder.rb +1 -1
- data/lib/rubygems/ext/ext_conf_builder.rb +8 -8
- data/lib/rubygems/ext/rake_builder.rb +3 -3
- data/lib/rubygems/ext.rb +7 -7
- data/lib/rubygems/gem_runner.rb +5 -5
- data/lib/rubygems/gemcutter_utilities.rb +31 -28
- data/lib/rubygems/indexer.rb +27 -27
- data/lib/rubygems/install_default_message.rb +2 -2
- data/lib/rubygems/install_message.rb +2 -2
- data/lib/rubygems/install_update_options.rb +55 -55
- data/lib/rubygems/installer.rb +32 -40
- data/lib/rubygems/installer_uninstaller_utils.rb +2 -2
- data/lib/rubygems/local_remote_options.rb +18 -20
- data/lib/rubygems/mock_gem_ui.rb +2 -2
- data/lib/rubygems/name_tuple.rb +4 -4
- data/lib/rubygems/optparse.rb +1 -1
- data/lib/rubygems/package/file_source.rb +2 -2
- data/lib/rubygems/package/old.rb +8 -8
- data/lib/rubygems/package/tar_header.rb +50 -50
- data/lib/rubygems/package/tar_reader/entry.rb +2 -2
- data/lib/rubygems/package/tar_reader.rb +1 -1
- data/lib/rubygems/package/tar_writer.rb +7 -7
- data/lib/rubygems/package.rb +54 -43
- data/lib/rubygems/package_task.rb +4 -4
- data/lib/rubygems/platform.rb +66 -55
- data/lib/rubygems/psych_tree.rb +1 -1
- data/lib/rubygems/query_utils.rb +35 -35
- data/lib/rubygems/rdoc.rb +2 -2
- data/lib/rubygems/remote_fetcher.rb +22 -22
- data/lib/rubygems/request/connection_pools.rb +4 -4
- data/lib/rubygems/request/http_pool.rb +1 -1
- data/lib/rubygems/request.rb +22 -22
- data/lib/rubygems/request_set/gem_dependency_api.rb +18 -18
- data/lib/rubygems/request_set/lockfile/parser.rb +26 -26
- data/lib/rubygems/request_set/lockfile/tokenizer.rb +4 -4
- data/lib/rubygems/request_set/lockfile.rb +5 -5
- data/lib/rubygems/request_set.rb +17 -17
- data/lib/rubygems/requirement.rb +6 -6
- data/lib/rubygems/resolver/activation_request.rb +3 -3
- data/lib/rubygems/resolver/api_set.rb +4 -4
- data/lib/rubygems/resolver/api_specification.rb +6 -6
- data/lib/rubygems/resolver/best_set.rb +5 -5
- data/lib/rubygems/resolver/conflict.rb +10 -10
- data/lib/rubygems/resolver/dependency_request.rb +2 -2
- data/lib/rubygems/resolver/git_set.rb +2 -2
- data/lib/rubygems/resolver/git_specification.rb +6 -6
- data/lib/rubygems/resolver/index_set.rb +3 -3
- data/lib/rubygems/resolver/index_specification.rb +6 -5
- data/lib/rubygems/resolver/installed_specification.rb +4 -4
- data/lib/rubygems/resolver/installer_set.rb +11 -16
- data/lib/rubygems/resolver/local_specification.rb +2 -2
- data/lib/rubygems/resolver/lock_set.rb +4 -4
- data/lib/rubygems/resolver/lock_specification.rb +4 -4
- data/lib/rubygems/resolver/molinillo.rb +1 -1
- data/lib/rubygems/resolver/specification.rb +1 -1
- data/lib/rubygems/resolver/vendor_set.rb +1 -1
- data/lib/rubygems/resolver/vendor_specification.rb +3 -3
- data/lib/rubygems/resolver.rb +39 -39
- data/lib/rubygems/s3_uri_signer.rb +6 -6
- data/lib/rubygems/safe_yaml.rb +2 -2
- data/lib/rubygems/security/policies.rb +11 -11
- data/lib/rubygems/security/policy.rb +18 -18
- data/lib/rubygems/security/signer.rb +5 -5
- data/lib/rubygems/security/trust_dir.rb +3 -3
- data/lib/rubygems/security.rb +28 -28
- data/lib/rubygems/security_option.rb +5 -5
- data/lib/rubygems/source/git.rb +21 -21
- data/lib/rubygems/source/installed.rb +1 -1
- data/lib/rubygems/source/local.rb +2 -2
- data/lib/rubygems/source/specific_file.rb +1 -1
- data/lib/rubygems/source.rb +16 -16
- data/lib/rubygems/spec_fetcher.rb +9 -9
- data/lib/rubygems/specification.rb +63 -62
- data/lib/rubygems/specification_policy.rb +15 -15
- data/lib/rubygems/stub_specification.rb +5 -5
- data/lib/rubygems/tsort.rb +1 -1
- data/lib/rubygems/uninstaller.rb +18 -18
- data/lib/rubygems/uri.rb +4 -4
- data/lib/rubygems/uri_formatter.rb +1 -1
- data/lib/rubygems/user_interaction.rb +33 -19
- data/lib/rubygems/util/licenses.rb +3 -3
- data/lib/rubygems/util.rb +10 -10
- data/lib/rubygems/validator.rb +5 -5
- data/lib/rubygems/version.rb +15 -9
- data/lib/rubygems/version_option.rb +3 -3
- data/lib/rubygems.rb +62 -61
- data/rubygems-update.gemspec +2 -2
- data/setup.rb +9 -9
- data/test/rubygems/helper.rb +132 -134
- data/test/rubygems/installer_test_case.rb +13 -13
- data/test/rubygems/package/tar_test_case.rb +2 -2
- data/test/rubygems/plugin/exception/rubygems_plugin.rb +1 -1
- data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +1 -1
- data/test/rubygems/rubygems_plugin.rb +2 -2
- data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +4 -4
- data/test/rubygems/test_bundled_ca.rb +10 -10
- data/test/rubygems/test_config.rb +3 -3
- data/test/rubygems/test_deprecate.rb +3 -3
- data/test/rubygems/test_exit.rb +2 -2
- data/test/rubygems/test_gem.rb +342 -342
- data/test/rubygems/test_gem_available_set.rb +21 -21
- data/test/rubygems/test_gem_bundler_version_finder.rb +1 -1
- data/test/rubygems/test_gem_command.rb +44 -44
- data/test/rubygems/test_gem_command_manager.rb +29 -29
- data/test/rubygems/test_gem_commands_build_command.rb +63 -63
- data/test/rubygems/test_gem_commands_cert_command.rb +97 -99
- data/test/rubygems/test_gem_commands_check_command.rb +4 -4
- data/test/rubygems/test_gem_commands_cleanup_command.rb +40 -40
- data/test/rubygems/test_gem_commands_contents_command.rb +27 -27
- data/test/rubygems/test_gem_commands_dependency_command.rb +36 -36
- data/test/rubygems/test_gem_commands_environment_command.rb +16 -16
- data/test/rubygems/test_gem_commands_fetch_command.rb +37 -37
- data/test/rubygems/test_gem_commands_generate_index_command.rb +7 -7
- data/test/rubygems/test_gem_commands_help_command.rb +13 -13
- data/test/rubygems/test_gem_commands_info_command.rb +28 -2
- data/test/rubygems/test_gem_commands_install_command.rb +131 -131
- data/test/rubygems/test_gem_commands_list_command.rb +4 -4
- data/test/rubygems/test_gem_commands_lock_command.rb +10 -10
- data/test/rubygems/test_gem_commands_mirror.rb +2 -2
- data/test/rubygems/test_gem_commands_open_command.rb +4 -4
- data/test/rubygems/test_gem_commands_outdated_command.rb +9 -9
- data/test/rubygems/test_gem_commands_owner_command.rb +41 -41
- data/test/rubygems/test_gem_commands_pristine_command.rb +92 -92
- data/test/rubygems/test_gem_commands_push_command.rb +54 -54
- data/test/rubygems/test_gem_commands_query_command.rb +73 -73
- data/test/rubygems/test_gem_commands_search_command.rb +2 -2
- data/test/rubygems/test_gem_commands_server_command.rb +2 -2
- data/test/rubygems/test_gem_commands_setup_command.rb +119 -85
- data/test/rubygems/test_gem_commands_signin_command.rb +45 -31
- data/test/rubygems/test_gem_commands_signout_command.rb +3 -3
- data/test/rubygems/test_gem_commands_sources_command.rb +28 -29
- data/test/rubygems/test_gem_commands_specification_command.rb +32 -32
- data/test/rubygems/test_gem_commands_stale_command.rb +4 -4
- data/test/rubygems/test_gem_commands_uninstall_command.rb +75 -75
- data/test/rubygems/test_gem_commands_unpack_command.rb +31 -31
- data/test/rubygems/test_gem_commands_update_command.rb +89 -89
- data/test/rubygems/test_gem_commands_which_command.rb +6 -6
- data/test/rubygems/test_gem_commands_yank_command.rb +40 -40
- data/test/rubygems/test_gem_config_file.rb +93 -81
- data/test/rubygems/test_gem_dependency.rb +73 -73
- data/test/rubygems/test_gem_dependency_installer.rb +165 -165
- data/test/rubygems/test_gem_dependency_list.rb +47 -47
- data/test/rubygems/test_gem_dependency_resolution_error.rb +4 -4
- data/test/rubygems/test_gem_doctor.rb +26 -26
- data/test/rubygems/test_gem_ext_builder.rb +59 -59
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.lock +6 -6
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.toml +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +8 -8
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +6 -6
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +8 -8
- data/test/rubygems/test_gem_ext_cargo_builder.rb +26 -26
- data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +3 -3
- data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +23 -23
- data/test/rubygems/test_gem_ext_cmake_builder.rb +15 -15
- data/test/rubygems/test_gem_ext_configure_builder.rb +13 -13
- data/test/rubygems/test_gem_ext_ext_conf_builder.rb +51 -52
- data/test/rubygems/test_gem_ext_rake_builder.rb +15 -15
- data/test/rubygems/test_gem_gem_runner.rb +7 -7
- data/test/rubygems/test_gem_gemcutter_utilities.rb +66 -66
- data/test/rubygems/test_gem_impossible_dependencies_error.rb +4 -4
- data/test/rubygems/test_gem_indexer.rb +48 -48
- data/test/rubygems/test_gem_install_update_options.rb +16 -16
- data/test/rubygems/test_gem_installer.rb +303 -300
- data/test/rubygems/test_gem_local_remote_options.rb +10 -10
- data/test/rubygems/test_gem_name_tuple.rb +4 -4
- data/test/rubygems/test_gem_package.rb +228 -206
- data/test/rubygems/test_gem_package_old.rb +13 -13
- data/test/rubygems/test_gem_package_tar_header.rb +42 -42
- data/test/rubygems/test_gem_package_tar_reader.rb +8 -8
- data/test/rubygems/test_gem_package_tar_reader_entry.rb +10 -10
- data/test/rubygems/test_gem_package_tar_writer.rb +76 -76
- data/test/rubygems/test_gem_package_task.rb +18 -18
- data/test/rubygems/test_gem_path_support.rb +14 -14
- data/test/rubygems/test_gem_platform.rb +298 -227
- data/test/rubygems/test_gem_rdoc.rb +14 -14
- data/test/rubygems/test_gem_remote_fetcher.rb +149 -149
- data/test/rubygems/test_gem_request.rb +55 -55
- data/test/rubygems/test_gem_request_connection_pools.rb +29 -29
- data/test/rubygems/test_gem_request_set.rb +99 -99
- data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +204 -206
- data/test/rubygems/test_gem_request_set_lockfile.rb +86 -86
- data/test/rubygems/test_gem_request_set_lockfile_parser.rb +56 -56
- data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +62 -62
- data/test/rubygems/test_gem_requirement.rb +47 -41
- data/test/rubygems/test_gem_resolver.rb +133 -99
- data/test/rubygems/test_gem_resolver_activation_request.rb +6 -6
- data/test/rubygems/test_gem_resolver_api_set.rb +33 -33
- data/test/rubygems/test_gem_resolver_api_specification.rb +47 -47
- data/test/rubygems/test_gem_resolver_best_set.rb +22 -22
- data/test/rubygems/test_gem_resolver_composed_set.rb +1 -1
- data/test/rubygems/test_gem_resolver_conflict.rb +12 -12
- data/test/rubygems/test_gem_resolver_dependency_request.rb +15 -15
- data/test/rubygems/test_gem_resolver_git_set.rb +21 -21
- data/test/rubygems/test_gem_resolver_git_specification.rb +21 -21
- data/test/rubygems/test_gem_resolver_index_set.rb +12 -12
- data/test/rubygems/test_gem_resolver_index_specification.rb +16 -16
- data/test/rubygems/test_gem_resolver_installed_specification.rb +5 -5
- data/test/rubygems/test_gem_resolver_installer_set.rb +78 -34
- data/test/rubygems/test_gem_resolver_local_specification.rb +7 -7
- data/test/rubygems/test_gem_resolver_lock_set.rb +12 -12
- data/test/rubygems/test_gem_resolver_lock_specification.rb +17 -17
- data/test/rubygems/test_gem_resolver_requirement_list.rb +1 -1
- data/test/rubygems/test_gem_resolver_specification.rb +8 -8
- data/test/rubygems/test_gem_resolver_vendor_set.rb +6 -6
- data/test/rubygems/test_gem_resolver_vendor_specification.rb +10 -10
- data/test/rubygems/test_gem_security.rb +67 -67
- data/test/rubygems/test_gem_security_policy.rb +62 -62
- data/test/rubygems/test_gem_security_signer.rb +28 -28
- data/test/rubygems/test_gem_security_trust_dir.rb +4 -4
- data/test/rubygems/test_gem_silent_ui.rb +38 -32
- data/test/rubygems/test_gem_source.rb +44 -44
- data/test/rubygems/test_gem_source_fetch_problem.rb +9 -9
- data/test/rubygems/test_gem_source_git.rb +59 -59
- data/test/rubygems/test_gem_source_installed.rb +16 -16
- data/test/rubygems/test_gem_source_list.rb +5 -5
- data/test/rubygems/test_gem_source_local.rb +14 -14
- data/test/rubygems/test_gem_source_lock.rb +31 -31
- data/test/rubygems/test_gem_source_specific_file.rb +17 -17
- data/test/rubygems/test_gem_source_subpath_problem.rb +7 -7
- data/test/rubygems/test_gem_source_vendor.rb +13 -13
- data/test/rubygems/test_gem_spec_fetcher.rb +72 -72
- data/test/rubygems/test_gem_specification.rb +444 -436
- data/test/rubygems/test_gem_stream_ui.rb +19 -19
- data/test/rubygems/test_gem_stub_specification.rb +32 -32
- data/test/rubygems/test_gem_text.rb +1 -1
- data/test/rubygems/test_gem_uninstaller.rb +112 -112
- data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +3 -3
- data/test/rubygems/test_gem_uri.rb +4 -4
- data/test/rubygems/test_gem_uri_formatter.rb +14 -14
- data/test/rubygems/test_gem_util.rb +23 -23
- data/test/rubygems/test_gem_validator.rb +8 -8
- data/test/rubygems/test_gem_version.rb +22 -15
- data/test/rubygems/test_gem_version_option.rb +15 -15
- data/test/rubygems/test_kernel.rb +31 -31
- data/test/rubygems/test_project_sanity.rb +1 -1
- data/test/rubygems/test_remote_fetch_error.rb +6 -6
- data/test/rubygems/test_require.rb +43 -43
- data/test/rubygems/test_rubygems.rb +8 -8
- data/test/rubygems/utilities.rb +19 -19
- metadata +14 -3
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
require_relative
|
3
|
-
require
|
2
|
+
require_relative "installer_test_case"
|
3
|
+
require "rubygems/commands/uninstall_command"
|
4
4
|
|
5
5
|
class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
6
6
|
def setup
|
7
7
|
super
|
8
8
|
@cmd = Gem::Commands::UninstallCommand.new
|
9
|
-
@executable = File.join(@gemhome,
|
9
|
+
@executable = File.join(@gemhome, "bin", "executable")
|
10
10
|
end
|
11
11
|
|
12
12
|
def test_execute_all_named
|
@@ -14,20 +14,20 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
14
14
|
|
15
15
|
util_make_gems
|
16
16
|
|
17
|
-
default = new_default_spec
|
17
|
+
default = new_default_spec "default", "1"
|
18
18
|
install_default_gems default
|
19
19
|
|
20
20
|
gemhome2 = "#{@gemhome}2"
|
21
21
|
|
22
|
-
a_4, = util_gem
|
22
|
+
a_4, = util_gem "a", 4
|
23
23
|
install_gem a_4, :install_dir => gemhome2
|
24
24
|
|
25
25
|
Gem::Specification.dirs = [@gemhome, gemhome2]
|
26
26
|
|
27
|
-
assert_includes Gem::Specification.all_names,
|
28
|
-
assert_includes Gem::Specification.all_names,
|
29
|
-
assert_includes Gem::Specification.all_names,
|
30
|
-
assert_includes Gem::Specification.all_names,
|
27
|
+
assert_includes Gem::Specification.all_names, "a-1"
|
28
|
+
assert_includes Gem::Specification.all_names, "a-4"
|
29
|
+
assert_includes Gem::Specification.all_names, "b-2"
|
30
|
+
assert_includes Gem::Specification.all_names, "default-1"
|
31
31
|
|
32
32
|
@cmd.options[:all] = true
|
33
33
|
@cmd.options[:args] = %w[a]
|
@@ -41,10 +41,10 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def test_execute_all_named_default_single
|
44
|
-
z_1 = new_default_spec
|
44
|
+
z_1 = new_default_spec "z", "1"
|
45
45
|
install_default_gems z_1
|
46
46
|
|
47
|
-
assert_includes Gem::Specification.all_names,
|
47
|
+
assert_includes Gem::Specification.all_names, "z-1"
|
48
48
|
|
49
49
|
@cmd.options[:all] = true
|
50
50
|
@cmd.options[:args] = %w[z]
|
@@ -57,18 +57,18 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
57
57
|
|
58
58
|
output = @ui.output.split "\n"
|
59
59
|
|
60
|
-
assert_equal
|
60
|
+
assert_equal "Gem z-1 cannot be uninstalled because it is a default gem", output.shift
|
61
61
|
end
|
62
62
|
|
63
63
|
def test_execute_all_named_default_multiple
|
64
|
-
z_1 = new_default_spec
|
64
|
+
z_1 = new_default_spec "z", "1"
|
65
65
|
install_default_gems z_1
|
66
66
|
|
67
|
-
z_2, = util_gem
|
67
|
+
z_2, = util_gem "z", 2
|
68
68
|
install_gem z_2
|
69
69
|
|
70
|
-
assert_includes Gem::Specification.all_names,
|
71
|
-
assert_includes Gem::Specification.all_names,
|
70
|
+
assert_includes Gem::Specification.all_names, "z-1"
|
71
|
+
assert_includes Gem::Specification.all_names, "z-2"
|
72
72
|
|
73
73
|
@cmd.options[:all] = true
|
74
74
|
@cmd.options[:args] = %w[z]
|
@@ -81,15 +81,15 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
81
81
|
|
82
82
|
output = @ui.output.split "\n"
|
83
83
|
|
84
|
-
assert_equal
|
85
|
-
assert_equal
|
84
|
+
assert_equal "Gem z-1 cannot be uninstalled because it is a default gem", output.shift
|
85
|
+
assert_equal "Successfully uninstalled z-2", output.shift
|
86
86
|
end
|
87
87
|
|
88
88
|
def test_execute_dependency_order
|
89
89
|
initial_install
|
90
90
|
|
91
|
-
c = quick_gem
|
92
|
-
spec.add_dependency
|
91
|
+
c = quick_gem "c" do |spec|
|
92
|
+
spec.add_dependency "a"
|
93
93
|
end
|
94
94
|
|
95
95
|
util_build_gem c
|
@@ -110,9 +110,9 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
110
110
|
|
111
111
|
output = ui.output.split "\n"
|
112
112
|
|
113
|
-
assert_equal
|
113
|
+
assert_equal "Successfully uninstalled c-2", output.shift
|
114
114
|
assert_equal "Removing executable", output.shift
|
115
|
-
assert_equal
|
115
|
+
assert_equal "Successfully uninstalled a-2", output.shift
|
116
116
|
end
|
117
117
|
|
118
118
|
def test_execute_removes_executable
|
@@ -149,12 +149,12 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
149
149
|
|
150
150
|
FileUtils.rm_f @executable # Wish this didn't happen in #setup
|
151
151
|
|
152
|
-
Gem::Installer.exec_format =
|
152
|
+
Gem::Installer.exec_format = "foo-%s-bar"
|
153
153
|
|
154
154
|
installer.format_executable = true
|
155
155
|
installer.install
|
156
156
|
|
157
|
-
formatted_executable = File.join @gemhome,
|
157
|
+
formatted_executable = File.join @gemhome, "bin", "foo-executable-bar"
|
158
158
|
assert_equal true, File.exist?(formatted_executable)
|
159
159
|
|
160
160
|
@cmd.options[:executables] = true
|
@@ -197,19 +197,19 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
197
197
|
|
198
198
|
util_make_gems
|
199
199
|
|
200
|
-
assert_equal 3, Gem::Specification.find_all_by_name(
|
200
|
+
assert_equal 3, Gem::Specification.find_all_by_name("a").length
|
201
201
|
|
202
|
-
@cmd.options[:version] =
|
202
|
+
@cmd.options[:version] = "1"
|
203
203
|
@cmd.options[:force] = true
|
204
|
-
@cmd.options[:args] = [
|
204
|
+
@cmd.options[:args] = ["a"]
|
205
205
|
|
206
206
|
use_ui ui do
|
207
207
|
@cmd.execute
|
208
208
|
end
|
209
209
|
|
210
|
-
assert_equal 2, Gem::Specification.find_all_by_name(
|
210
|
+
assert_equal 2, Gem::Specification.find_all_by_name("a").length
|
211
211
|
|
212
|
-
assert File.exist? File.join(@gemhome,
|
212
|
+
assert File.exist? File.join(@gemhome, "bin", "executable")
|
213
213
|
end
|
214
214
|
|
215
215
|
def test_execute_with_version_specified_as_colon
|
@@ -219,18 +219,18 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
219
219
|
|
220
220
|
util_make_gems
|
221
221
|
|
222
|
-
assert_equal 3, Gem::Specification.find_all_by_name(
|
222
|
+
assert_equal 3, Gem::Specification.find_all_by_name("a").length
|
223
223
|
|
224
224
|
@cmd.options[:force] = true
|
225
|
-
@cmd.options[:args] = [
|
225
|
+
@cmd.options[:args] = ["a:1"]
|
226
226
|
|
227
227
|
use_ui ui do
|
228
228
|
@cmd.execute
|
229
229
|
end
|
230
230
|
|
231
|
-
assert_equal 2, Gem::Specification.find_all_by_name(
|
231
|
+
assert_equal 2, Gem::Specification.find_all_by_name("a").length
|
232
232
|
|
233
|
-
assert File.exist? File.join(@gemhome,
|
233
|
+
assert File.exist? File.join(@gemhome, "bin", "executable")
|
234
234
|
end
|
235
235
|
|
236
236
|
def test_uninstall_selection
|
@@ -238,22 +238,22 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
238
238
|
|
239
239
|
util_make_gems
|
240
240
|
|
241
|
-
list = Gem::Specification.find_all_by_name
|
241
|
+
list = Gem::Specification.find_all_by_name "a"
|
242
242
|
|
243
|
-
@cmd.options[:args] = [
|
243
|
+
@cmd.options[:args] = ["a"]
|
244
244
|
|
245
245
|
use_ui ui do
|
246
246
|
@cmd.execute
|
247
247
|
end
|
248
248
|
|
249
|
-
updated_list = Gem::Specification.find_all_by_name(
|
249
|
+
updated_list = Gem::Specification.find_all_by_name("a")
|
250
250
|
assert_equal list.length - 1, updated_list.length
|
251
251
|
|
252
|
-
assert_match
|
253
|
-
assert_match
|
254
|
-
assert_match
|
255
|
-
assert_match
|
256
|
-
assert_match
|
252
|
+
assert_match " 1. a-1", ui.output
|
253
|
+
assert_match " 2. a-2", ui.output
|
254
|
+
assert_match " 3. a-3.a", ui.output
|
255
|
+
assert_match " 4. All versions", ui.output
|
256
|
+
assert_match "uninstalled a-1", ui.output
|
257
257
|
end
|
258
258
|
|
259
259
|
def test_uninstall_selection_multiple_gems
|
@@ -261,31 +261,31 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
261
261
|
|
262
262
|
util_make_gems
|
263
263
|
|
264
|
-
a_list = Gem::Specification.find_all_by_name(
|
265
|
-
b_list = Gem::Specification.find_all_by_name(
|
264
|
+
a_list = Gem::Specification.find_all_by_name("a")
|
265
|
+
b_list = Gem::Specification.find_all_by_name("b")
|
266
266
|
list = a_list + b_list
|
267
267
|
|
268
|
-
@cmd.options[:args] = [
|
268
|
+
@cmd.options[:args] = ["a", "b"]
|
269
269
|
|
270
270
|
use_ui ui do
|
271
271
|
@cmd.execute
|
272
272
|
end
|
273
273
|
|
274
|
-
updated_a_list = Gem::Specification.find_all_by_name(
|
275
|
-
updated_b_list = Gem::Specification.find_all_by_name(
|
274
|
+
updated_a_list = Gem::Specification.find_all_by_name("a")
|
275
|
+
updated_b_list = Gem::Specification.find_all_by_name("b")
|
276
276
|
updated_list = updated_a_list + updated_b_list
|
277
277
|
|
278
278
|
assert_equal list.length - 2, updated_list.length
|
279
279
|
|
280
280
|
out = ui.output.split("\n")
|
281
|
-
assert_match
|
282
|
-
assert_match
|
283
|
-
assert_match
|
284
|
-
assert_match
|
285
|
-
assert_match
|
286
|
-
assert_match
|
287
|
-
assert_match
|
288
|
-
assert_match
|
281
|
+
assert_match "uninstalled b-2", out.shift
|
282
|
+
assert_match "", out.shift
|
283
|
+
assert_match "Select gem to uninstall:", out.shift
|
284
|
+
assert_match " 1. a-1", out.shift
|
285
|
+
assert_match " 2. a-2", out.shift
|
286
|
+
assert_match " 3. a-3.a", out.shift
|
287
|
+
assert_match " 4. All versions", out.shift
|
288
|
+
assert_match "uninstalled a-1", out.shift
|
289
289
|
assert_empty out
|
290
290
|
end
|
291
291
|
|
@@ -294,22 +294,22 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
294
294
|
|
295
295
|
ui = Gem::MockGemUi.new "y\n"
|
296
296
|
|
297
|
-
a_1, = util_gem
|
297
|
+
a_1, = util_gem "a", 1
|
298
298
|
install_gem a_1
|
299
299
|
|
300
|
-
a_3a, = util_gem
|
300
|
+
a_3a, = util_gem "a", "3.a"
|
301
301
|
install_gem a_3a
|
302
302
|
|
303
|
-
assert_equal 3, Gem::Specification.find_all_by_name(
|
303
|
+
assert_equal 3, Gem::Specification.find_all_by_name("a").length
|
304
304
|
|
305
305
|
@cmd.options[:force] = true
|
306
|
-
@cmd.options[:args] = [
|
306
|
+
@cmd.options[:args] = ["a"]
|
307
307
|
|
308
308
|
use_ui ui do
|
309
309
|
@cmd.execute
|
310
310
|
end
|
311
311
|
|
312
|
-
assert_empty Gem::Specification.find_all_by_name(
|
312
|
+
assert_empty Gem::Specification.find_all_by_name("a")
|
313
313
|
assert_match "Removing executable", ui.output
|
314
314
|
refute File.exist? @executable
|
315
315
|
end
|
@@ -321,36 +321,36 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
321
321
|
|
322
322
|
util_make_gems
|
323
323
|
|
324
|
-
assert Gem::Specification.find_all_by_name(
|
325
|
-
assert Gem::Specification.find_all_by_name(
|
324
|
+
assert Gem::Specification.find_all_by_name("dep_x").length > 0
|
325
|
+
assert Gem::Specification.find_all_by_name("x").length > 0
|
326
326
|
|
327
327
|
@cmd.options[:force] = true
|
328
|
-
@cmd.options[:args] = [
|
328
|
+
@cmd.options[:args] = ["x"]
|
329
329
|
|
330
330
|
use_ui ui do
|
331
331
|
@cmd.execute
|
332
332
|
end
|
333
333
|
|
334
|
-
assert Gem::Specification.find_all_by_name(
|
335
|
-
assert Gem::Specification.find_all_by_name(
|
334
|
+
assert Gem::Specification.find_all_by_name("dep_x").length > 0
|
335
|
+
assert Gem::Specification.find_all_by_name("x").length.zero?
|
336
336
|
end
|
337
337
|
|
338
338
|
def test_execute_all
|
339
339
|
util_make_gems
|
340
340
|
|
341
|
-
default = new_default_spec
|
341
|
+
default = new_default_spec "default", "1"
|
342
342
|
install_default_gems default
|
343
343
|
|
344
344
|
gemhome2 = "#{@gemhome}2"
|
345
345
|
|
346
|
-
a_4, = util_gem
|
346
|
+
a_4, = util_gem "a", 4
|
347
347
|
install_gem a_4
|
348
348
|
|
349
349
|
Gem::Specification.dirs = [@gemhome, gemhome2]
|
350
350
|
|
351
|
-
assert_includes Gem::Specification.all_names,
|
352
|
-
assert_includes Gem::Specification.all_names,
|
353
|
-
assert_includes Gem::Specification.all_names,
|
351
|
+
assert_includes Gem::Specification.all_names, "a-1"
|
352
|
+
assert_includes Gem::Specification.all_names, "a-4"
|
353
|
+
assert_includes Gem::Specification.all_names, "default-1"
|
354
354
|
|
355
355
|
@cmd.options[:all] = true
|
356
356
|
@cmd.options[:args] = []
|
@@ -368,14 +368,14 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
368
368
|
|
369
369
|
gemhome2 = "#{@gemhome}2"
|
370
370
|
|
371
|
-
a_4, = util_gem
|
371
|
+
a_4, = util_gem "a", 4
|
372
372
|
install_gem a_4 , :install_dir => gemhome2
|
373
373
|
|
374
374
|
Gem::Specification.dirs = [@gemhome, gemhome2]
|
375
375
|
|
376
|
-
assert_includes Gem::Specification.all_names,
|
376
|
+
assert_includes Gem::Specification.all_names, "a-4"
|
377
377
|
|
378
|
-
@cmd.options[:args] = [
|
378
|
+
@cmd.options[:args] = ["a:4"]
|
379
379
|
|
380
380
|
e = assert_raise Gem::InstallError do
|
381
381
|
use_ui ui do
|
@@ -397,7 +397,7 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
|
|
397
397
|
end
|
398
398
|
|
399
399
|
def test_handle_options_vendor
|
400
|
-
vendordir(File.join(@tempdir,
|
400
|
+
vendordir(File.join(@tempdir, "vendor")) do
|
401
401
|
use_ui @ui do
|
402
402
|
@cmd.handle_options %w[--vendor]
|
403
403
|
end
|
@@ -440,7 +440,7 @@ WARNING: Use your OS package manager to uninstall vendor gems
|
|
440
440
|
@cmd.handle_options %w[--vendor]
|
441
441
|
end
|
442
442
|
|
443
|
-
assert_equal
|
443
|
+
assert_equal "invalid option: --vendor your platform is not supported",
|
444
444
|
e.message
|
445
445
|
|
446
446
|
refute @cmd.options[:vendor]
|
@@ -449,7 +449,7 @@ WARNING: Use your OS package manager to uninstall vendor gems
|
|
449
449
|
end
|
450
450
|
|
451
451
|
def test_execute_with_gem_not_installed
|
452
|
-
@cmd.options[:args] = [
|
452
|
+
@cmd.options[:args] = ["d"]
|
453
453
|
|
454
454
|
use_ui ui do
|
455
455
|
@cmd.execute
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
require_relative
|
3
|
-
require
|
2
|
+
require_relative "helper"
|
3
|
+
require "rubygems/commands/unpack_command"
|
4
4
|
|
5
5
|
class TestGemCommandsUnpackCommand < Gem::TestCase
|
6
6
|
def setup
|
@@ -17,28 +17,28 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
17
17
|
assert_equal(
|
18
18
|
@cmd.find_in_cache(File.basename @a1.cache_file),
|
19
19
|
@a1.cache_file,
|
20
|
-
|
20
|
+
"found a-1.gem in the cache"
|
21
21
|
)
|
22
22
|
end
|
23
23
|
|
24
24
|
def test_get_path
|
25
25
|
specs = spec_fetcher do |fetcher|
|
26
|
-
fetcher.gem
|
26
|
+
fetcher.gem "a", 1
|
27
27
|
end
|
28
28
|
|
29
|
-
dep = Gem::Dependency.new
|
29
|
+
dep = Gem::Dependency.new "a", 1
|
30
30
|
assert_equal(
|
31
31
|
@cmd.get_path(dep),
|
32
|
-
specs[
|
33
|
-
|
32
|
+
specs["a-1"].cache_file,
|
33
|
+
"fetches a-1 and returns the cache path"
|
34
34
|
)
|
35
35
|
|
36
|
-
FileUtils.rm specs[
|
36
|
+
FileUtils.rm specs["a-1"].cache_file
|
37
37
|
|
38
38
|
assert_equal(
|
39
39
|
@cmd.get_path(dep),
|
40
|
-
specs[
|
41
|
-
|
40
|
+
specs["a-1"].cache_file,
|
41
|
+
"when removed from cache, refetches a-1"
|
42
42
|
)
|
43
43
|
end
|
44
44
|
|
@@ -53,18 +53,18 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
53
53
|
end
|
54
54
|
end
|
55
55
|
|
56
|
-
assert File.exist?(File.join(@tempdir,
|
57
|
-
assert File.exist?(File.join(@tempdir,
|
56
|
+
assert File.exist?(File.join(@tempdir, "a-3.a")), "a should be unpacked"
|
57
|
+
assert File.exist?(File.join(@tempdir, "b-2")), "b should be unpacked"
|
58
58
|
end
|
59
59
|
|
60
60
|
def test_execute_gem_path
|
61
61
|
spec_fetcher do |fetcher|
|
62
|
-
fetcher.gem
|
62
|
+
fetcher.gem "a", "3.a"
|
63
63
|
end
|
64
64
|
|
65
65
|
Gem.clear_paths
|
66
66
|
|
67
|
-
gemhome2 = File.join @tempdir,
|
67
|
+
gemhome2 = File.join @tempdir, "gemhome2"
|
68
68
|
|
69
69
|
Gem.use_paths gemhome2, [gemhome2, @gemhome]
|
70
70
|
|
@@ -76,7 +76,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
76
76
|
end
|
77
77
|
end
|
78
78
|
|
79
|
-
assert File.exist?(File.join(@tempdir,
|
79
|
+
assert File.exist?(File.join(@tempdir, "a-3.a"))
|
80
80
|
end
|
81
81
|
|
82
82
|
def test_execute_gem_path_missing
|
@@ -84,7 +84,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
84
84
|
|
85
85
|
Gem.clear_paths
|
86
86
|
|
87
|
-
gemhome2 = File.join @tempdir,
|
87
|
+
gemhome2 = File.join @tempdir, "gemhome2"
|
88
88
|
|
89
89
|
Gem.use_paths gemhome2, [gemhome2, @gemhome]
|
90
90
|
|
@@ -96,13 +96,13 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
96
96
|
end
|
97
97
|
end
|
98
98
|
|
99
|
-
assert_equal
|
99
|
+
assert_equal "", @ui.output
|
100
100
|
end
|
101
101
|
|
102
102
|
def test_execute_remote
|
103
103
|
spec_fetcher do |fetcher|
|
104
|
-
fetcher.download
|
105
|
-
fetcher.download
|
104
|
+
fetcher.download "a", 1
|
105
|
+
fetcher.download "a", 2
|
106
106
|
end
|
107
107
|
|
108
108
|
Gem.configuration.verbose = :really
|
@@ -114,7 +114,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
114
114
|
end
|
115
115
|
end
|
116
116
|
|
117
|
-
assert File.exist?(File.join(@tempdir,
|
117
|
+
assert File.exist?(File.join(@tempdir, "a-2")), "a should be unpacked"
|
118
118
|
end
|
119
119
|
|
120
120
|
def test_execute_spec
|
@@ -129,15 +129,15 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
129
129
|
end
|
130
130
|
end
|
131
131
|
|
132
|
-
assert File.exist?(File.join(@tempdir,
|
133
|
-
assert File.exist?(File.join(@tempdir,
|
132
|
+
assert File.exist?(File.join(@tempdir, "a-3.a.gemspec"))
|
133
|
+
assert File.exist?(File.join(@tempdir, "b-2.gemspec"))
|
134
134
|
end
|
135
135
|
|
136
136
|
def test_execute_spec_target
|
137
137
|
util_make_gems
|
138
138
|
|
139
139
|
@cmd.options[:args] = %w[a b]
|
140
|
-
@cmd.options[:target] =
|
140
|
+
@cmd.options[:target] = "specs"
|
141
141
|
@cmd.options[:spec] = true
|
142
142
|
|
143
143
|
use_ui @ui do
|
@@ -146,12 +146,12 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
146
146
|
end
|
147
147
|
end
|
148
148
|
|
149
|
-
assert File.exist?(File.join(@tempdir,
|
150
|
-
assert File.exist?(File.join(@tempdir,
|
149
|
+
assert File.exist?(File.join(@tempdir, "specs/a-3.a.gemspec"))
|
150
|
+
assert File.exist?(File.join(@tempdir, "specs/b-2.gemspec"))
|
151
151
|
end
|
152
152
|
|
153
153
|
def test_execute_sudo
|
154
|
-
pend
|
154
|
+
pend "Cannot perform this test on windows (chmod)" if win_platform?
|
155
155
|
|
156
156
|
util_make_gems
|
157
157
|
|
@@ -165,7 +165,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
165
165
|
end
|
166
166
|
end
|
167
167
|
|
168
|
-
assert File.exist?(File.join(@tempdir,
|
168
|
+
assert File.exist?(File.join(@tempdir, "b-2")), "b should be unpacked"
|
169
169
|
ensure
|
170
170
|
FileUtils.chmod 0755, @gemhome
|
171
171
|
end
|
@@ -173,7 +173,7 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
173
173
|
def test_execute_with_target_option
|
174
174
|
util_make_gems
|
175
175
|
|
176
|
-
target =
|
176
|
+
target = "with_target"
|
177
177
|
@cmd.options[:args] = %w[a]
|
178
178
|
@cmd.options[:target] = target
|
179
179
|
|
@@ -183,12 +183,12 @@ class TestGemCommandsUnpackCommand < Gem::TestCase
|
|
183
183
|
end
|
184
184
|
end
|
185
185
|
|
186
|
-
assert File.exist?(File.join(@tempdir, target,
|
186
|
+
assert File.exist?(File.join(@tempdir, target, "a-3.a"))
|
187
187
|
end
|
188
188
|
|
189
189
|
def test_execute_exact_match
|
190
|
-
foo_spec = util_spec
|
191
|
-
foo_bar_spec = util_spec
|
190
|
+
foo_spec = util_spec "foo"
|
191
|
+
foo_bar_spec = util_spec "foo_bar"
|
192
192
|
|
193
193
|
use_ui @ui do
|
194
194
|
Dir.chdir @tempdir do
|