summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--spec/bundler/bundler/friendly_errors_spec.rb64
1 files changed, 45 insertions, 19 deletions
diff --git a/spec/bundler/bundler/friendly_errors_spec.rb b/spec/bundler/bundler/friendly_errors_spec.rb
index 8df653c0f1..dc9d539a30 100644
--- a/spec/bundler/bundler/friendly_errors_spec.rb
+++ b/spec/bundler/bundler/friendly_errors_spec.rb
@@ -6,33 +6,59 @@ require "cgi"
RSpec.describe Bundler, "friendly errors" do
context "with invalid YAML in .gemrc" do
- let(:config_home) { File.dirname(Gem.configuration.config_file_name) }
+ context "with the old ~/.gemrc" do
+ before do
+ File.open(home(".gemrc"), "w") do |f|
+ f.write "invalid: yaml: hah"
+ end
+ end
- before do
- FileUtils.mkdir_p config_home
- File.open(Gem.configuration.config_file_name, "w") do |f|
- f.write "invalid: yaml: hah"
+ after do
+ FileUtils.rm(home(".gemrc"))
end
- end
- after do
- FileUtils.rm(Gem.configuration.config_file_name)
+ it "reports a relevant friendly error message" do
+ gemfile <<-G
+ source "#{file_uri_for(gem_repo1)}"
+ gem "rack"
+ G
+
+ bundle :install, :env => { "DEBUG" => "true" }
+
+ expect(err).to include("Failed to load #{home(".gemrc")}")
+ expect(exitstatus).to eq(0) if exitstatus
+ end
end
- it "reports a relevant friendly error message" do
- gemfile <<-G
- source "#{file_uri_for(gem_repo1)}"
- gem "rack"
- G
+ context "with XDG_CONFIG_HOME" do
+ let(:config_home) { File.dirname(Gem.configuration.config_file_name) }
- bundle :install, :env => { "DEBUG" => "true" }
+ before do
+ FileUtils.mkdir_p config_home
+ File.open(Gem.configuration.config_file_name, "w") do |f|
+ f.write "invalid: yaml: hah"
+ end
+ end
- if Gem::VERSION >= "3.2.0.pre.1"
- expect(err).to include("Failed to load #{File.join(config_home, "gemrc")}")
- else
- expect(err).to include("Failed to load #{home(".gemrc")}")
+ after do
+ FileUtils.rm(Gem.configuration.config_file_name)
+ end
+
+ it "reports a relevant friendly error message" do
+ gemfile <<-G
+ source "#{file_uri_for(gem_repo1)}"
+ gem "rack"
+ G
+
+ bundle :install, :env => { "DEBUG" => "true" }
+
+ if Gem::VERSION >= "3.2.0.pre.1"
+ expect(err).to include("Failed to load #{File.join(config_home, "gemrc")}")
+ else
+ expect(err).to include("Failed to load #{home(".gemrc")}")
+ end
+ expect(exitstatus).to eq(0) if exitstatus
end
- expect(exitstatus).to eq(0) if exitstatus
end
end