summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAustin Pray <austin@austinpray.com>2020-08-01 21:53:48 -0500
committergit <svn-admin@ruby-lang.org>2025-11-18 10:38:28 +0000
commit55afec32ff255b74ee7490177ed7ae0f4b5bde29 (patch)
tree933ad8c1558c66439d3f94d40cb9f7c0f5eb0931
parentdd6ccb44f0a5207ea5a0308f0917a23f7157dcfe (diff)
[ruby/rubygems] fix tests
https://github.com/ruby/rubygems/commit/1dc669a0ab
-rw-r--r--lib/bundler/cli/common.rb6
-rw-r--r--spec/bundler/bundler/cli_common_spec.rb2
-rw-r--r--spec/bundler/commands/update_spec.rb2
3 files changed, 7 insertions, 3 deletions
diff --git a/lib/bundler/cli/common.rb b/lib/bundler/cli/common.rb
index b410ba9d26..7de6fb7fdb 100644
--- a/lib/bundler/cli/common.rb
+++ b/lib/bundler/cli/common.rb
@@ -95,8 +95,10 @@ module Bundler
def self.gem_not_found_message(missing_gem_name, alternatives)
message = "Could not find gem '#{missing_gem_name}'."
- if defined?(DidYouMean::SpellChecker)
- alternate_names = alternatives.map {|a| a.respond_to?(:name) ? a.name : a }
+ alternate_names = alternatives.map {|a| a.respond_to?(:name) ? a.name : a }
+ if alternate_names.include?(missing_gem_name.downcase)
+ message += "\nDid you mean '#{missing_gem_name.downcase}'?"
+ elsif defined?(DidYouMean::SpellChecker)
suggestions = DidYouMean::SpellChecker.new(:dictionary => alternate_names).correct(missing_gem_name)
message += "\nDid you mean #{word_list(suggestions)}?" unless suggestions.empty?
end
diff --git a/spec/bundler/bundler/cli_common_spec.rb b/spec/bundler/bundler/cli_common_spec.rb
index ab7d69b969..37a92c20e6 100644
--- a/spec/bundler/bundler/cli_common_spec.rb
+++ b/spec/bundler/bundler/cli_common_spec.rb
@@ -9,6 +9,8 @@ RSpec.describe Bundler::CLI::Common do
expect(message).to match("Could not find gem 'ralis'.$")
message = subject.gem_not_found_message("ralis", ["rails"])
expect(message).to match("Did you mean 'rails'?")
+ message = subject.gem_not_found_message("Rails", ["rails"])
+ expect(message).to match("Did you mean 'rails'?")
message = subject.gem_not_found_message("meail", %w[email fail eval])
expect(message).to match("Did you mean 'email'?")
message = subject.gem_not_found_message("nokogri", %w[nokogiri rails sidekiq dog])
diff --git a/spec/bundler/commands/update_spec.rb b/spec/bundler/commands/update_spec.rb
index 92b9e4df0a..61d8ece279 100644
--- a/spec/bundler/commands/update_spec.rb
+++ b/spec/bundler/commands/update_spec.rb
@@ -193,7 +193,7 @@ RSpec.describe "bundle update" do
end
it "should suggest alternatives" do
bundle "update platformspecific", raise_on_error: false
- expect(err).to include "Did you mean platform_specific?"
+ expect(err).to include "Did you mean 'platform_specific'?"
end
end