aboutsummaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2020-05-29 12:46:16 +0200
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2020-06-05 07:32:42 +0900
commite413e746afd20a7a0629c3e3c572d6d3dffc1c16 (patch)
treedaf21fadda38ed3ea446d2fa0131cd50cf666353 /spec
parent61b61f426a796871c27a0a9e4eedb31057864165 (diff)
downloadruby-e413e746afd20a7a0629c3e3c572d6d3dffc1c16.tar.gz
[rubygems/rubygems] Remove `forgotten_command_line_usages` from specs
Instead, use the non-deprecated option except when specifically testing deprecated CLI flags. In that case, pass the flag directly and limit the specs to `bundler < 3`. https://github.com/rubygems/rubygems/commit/3d5e186241
Diffstat (limited to 'spec')
-rw-r--r--spec/bundler/commands/cache_spec.rb15
-rw-r--r--spec/bundler/commands/check_spec.rb6
-rw-r--r--spec/bundler/commands/config_spec.rb6
-rw-r--r--spec/bundler/commands/exec_spec.rb3
-rw-r--r--spec/bundler/commands/install_spec.rb8
-rw-r--r--spec/bundler/commands/post_bundle_message_spec.rb51
-rw-r--r--spec/bundler/install/deploy_spec.rb48
-rw-r--r--spec/bundler/install/gemfile/eval_gemfile_spec.rb3
-rw-r--r--spec/bundler/install/gemfile/gemspec_spec.rb6
-rw-r--r--spec/bundler/install/gemfile/git_spec.rb3
-rw-r--r--spec/bundler/install/gemfile/path_spec.rb3
-rw-r--r--spec/bundler/install/gemfile/platform_spec.rb3
-rw-r--r--spec/bundler/install/gemfile/sources_spec.rb6
-rw-r--r--spec/bundler/install/gems/compact_index_spec.rb7
-rw-r--r--spec/bundler/install/gems/dependency_api_spec.rb7
-rw-r--r--spec/bundler/install/gems/standalone_spec.rb37
-rw-r--r--spec/bundler/install/git_spec.rb4
-rw-r--r--spec/bundler/install/path_spec.rb27
-rw-r--r--spec/bundler/lock/lockfile_spec.rb3
-rw-r--r--spec/bundler/plugins/install_spec.rb3
-rw-r--r--spec/bundler/plugins/source/example_spec.rb6
-rw-r--r--spec/bundler/runtime/setup_spec.rb15
-rw-r--r--spec/bundler/support/helpers.rb15
23 files changed, 182 insertions, 103 deletions
diff --git a/spec/bundler/commands/cache_spec.rb b/spec/bundler/commands/cache_spec.rb
index 09a1b8437a..33709446c1 100644
--- a/spec/bundler/commands/cache_spec.rb
+++ b/spec/bundler/commands/cache_spec.rb
@@ -221,7 +221,8 @@ RSpec.describe "bundle cache" do
end
end
- install_gemfile! <<-G, forgotten_command_line_options(:without => "wo")
+ bundle "config --local without wo"
+ install_gemfile! <<-G
source "file:#{gem_repo1}"
gem "rack"
group :wo do
@@ -236,7 +237,8 @@ RSpec.describe "bundle cache" do
expect(the_bundle).to include_gem "rack 1.0"
expect(the_bundle).not_to include_gems "weakling", "uninstallable"
- bundle! :install, forgotten_command_line_options(:without => "wo")
+ bundle "config --local without wo"
+ bundle! :install
expect(the_bundle).to include_gem "rack 1.0"
expect(the_bundle).not_to include_gems "weakling", "uninstallable"
end
@@ -251,7 +253,10 @@ RSpec.describe "bundle cache" do
bundle "install"
end
- subject { bundle :cache, forgotten_command_line_options(:frozen => true) }
+ subject do
+ bundle "config --local frozen true"
+ bundle :cache
+ end
it "tries to install with frozen" do
bundle! "config set deployment true"
@@ -299,7 +304,9 @@ RSpec.describe "bundle install with gem sources" do
simulate_new_machine
FileUtils.rm_rf gem_repo2
- bundle! :install, forgotten_command_line_options(:deployment => true, :path => "vendor/bundle")
+ bundle "config --local deployment true"
+ bundle "config --local path vendor/bundle"
+ bundle! :install
expect(the_bundle).to include_gems "rack 1.0.0"
end
diff --git a/spec/bundler/commands/check_spec.rb b/spec/bundler/commands/check_spec.rb
index 8955e51dff..c7f887d3e5 100644
--- a/spec/bundler/commands/check_spec.rb
+++ b/spec/bundler/commands/check_spec.rb
@@ -123,7 +123,8 @@ RSpec.describe "bundle check" do
gem "rack", :group => :foo
G
- bundle :install, forgotten_command_line_options(:without => "foo")
+ bundle "config --local without foo"
+ bundle :install
gemfile <<-G
source "#{file_uri_for(gem_repo1)}"
@@ -230,7 +231,8 @@ RSpec.describe "bundle check" do
gem "foo"
G
- bundle! "install", forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle! "install"
FileUtils.rm(bundled_app_lock)
bundle :check
diff --git a/spec/bundler/commands/config_spec.rb b/spec/bundler/commands/config_spec.rb
index 3a6b72d988..898622a1d7 100644
--- a/spec/bundler/commands/config_spec.rb
+++ b/spec/bundler/commands/config_spec.rb
@@ -45,7 +45,8 @@ RSpec.describe ".bundle/config" do
it "can be moved with an environment variable" do
ENV["BUNDLE_APP_CONFIG"] = tmp("foo/bar").to_s
- bundle "install", forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle "install"
expect(bundled_app(".bundle")).not_to exist
expect(tmp("foo/bar/config")).to exist
@@ -56,7 +57,8 @@ RSpec.describe ".bundle/config" do
FileUtils.mkdir_p bundled_app("omg")
ENV["BUNDLE_APP_CONFIG"] = "../foo"
- bundle "install", forgotten_command_line_options(:path => "vendor/bundle").merge(:dir => bundled_app("omg"))
+ bundle "config --local path vendor/bundle"
+ bundle "install", :dir => bundled_app("omg")
expect(bundled_app(".bundle")).not_to exist
expect(bundled_app("../foo/config")).to exist
diff --git a/spec/bundler/commands/exec_spec.rb b/spec/bundler/commands/exec_spec.rb
index 1b1839a335..0c899b9c20 100644
--- a/spec/bundler/commands/exec_spec.rb
+++ b/spec/bundler/commands/exec_spec.rb
@@ -270,7 +270,8 @@ RSpec.describe "bundle exec" do
end
it "handles gems installed with --without", :ruby_repo do
- install_gemfile <<-G, forgotten_command_line_options(:without => "middleware")
+ bundle "config --local without middleware"
+ install_gemfile <<-G
source "#{file_uri_for(gem_repo1)}"
gem "rack" # rack 0.9.1 and 1.0 exist
diff --git a/spec/bundler/commands/install_spec.rb b/spec/bundler/commands/install_spec.rb
index d8f8355812..881b5e8e2f 100644
--- a/spec/bundler/commands/install_spec.rb
+++ b/spec/bundler/commands/install_spec.rb
@@ -273,7 +273,8 @@ RSpec.describe "bundle install with gem sources" do
end
it "works" do
- bundle "install", forgotten_command_line_options(:path => "vendor")
+ bundle "config --local path vendor"
+ bundle "install"
expect(the_bundle).to include_gems "rack 1.0"
end
@@ -549,7 +550,8 @@ RSpec.describe "bundle install with gem sources" do
it "should display a proper message to explain the problem" do
FileUtils.chmod(0o500, bundled_app("vendor"))
- bundle :install, forgotten_command_line_options(:path => "vendor")
+ bundle "config --local path vendor"
+ bundle :install
expect(err).to include(bundled_app("vendor").to_s)
expect(err).to include("grant write permissions")
end
@@ -561,7 +563,7 @@ RSpec.describe "bundle install with gem sources" do
source "#{file_uri_for(gem_repo1)}"
gem "rack"
G
- forgotten_command_line_options(:path => "bundle")
+ bundle "config --local path bundle"
bundle! "install", :standalone => true
end
diff --git a/spec/bundler/commands/post_bundle_message_spec.rb b/spec/bundler/commands/post_bundle_message_spec.rb
index bcbf367029..5c6112762e 100644
--- a/spec/bundler/commands/post_bundle_message_spec.rb
+++ b/spec/bundler/commands/post_bundle_message_spec.rb
@@ -29,19 +29,22 @@ RSpec.describe "post bundle message" do
expect(out).to include(bundle_complete_message)
expect(out).to include(installed_gems_stats)
- bundle! :install, forgotten_command_line_options(:without => "emo")
+ bundle "config --local without emo"
+ bundle! :install
expect(out).to include(bundle_show_message)
expect(out).to include("Gems in the group emo were not installed")
expect(out).to include(bundle_complete_message)
expect(out).to include(installed_gems_stats)
- bundle! :install, forgotten_command_line_options(:without => "emo test")
+ bundle "config --local without emo test"
+ bundle! :install
expect(out).to include(bundle_show_message)
expect(out).to include("Gems in the groups emo and test were not installed")
expect(out).to include(bundle_complete_message)
expect(out).to include("4 Gemfile dependencies, 3 gems now installed.")
- bundle! :install, forgotten_command_line_options(:without => "emo obama test")
+ bundle "config --local without emo obama test"
+ bundle! :install
expect(out).to include(bundle_show_message)
expect(out).to include("Gems in the groups emo, obama and test were not installed")
expect(out).to include(bundle_complete_message)
@@ -52,22 +55,29 @@ RSpec.describe "post bundle message" do
let(:bundle_path) { "./vendor" }
it "shows proper messages according to the configured groups" do
- bundle! :install, forgotten_command_line_options(:path => "vendor")
+ bundle "config --local path vendor"
+ bundle! :install
expect(out).to include(bundle_show_path_message)
expect(out).to_not include("Gems in the group")
expect(out).to include(bundle_complete_message)
- bundle! :install, forgotten_command_line_options(:without => "emo", :path => "vendor")
+ bundle "config --local path vendor"
+ bundle "config --local without emo"
+ bundle! :install
expect(out).to include(bundle_show_path_message)
expect(out).to include("Gems in the group emo were not installed")
expect(out).to include(bundle_complete_message)
- bundle! :install, forgotten_command_line_options(:without => "emo test", :path => "vendor")
+ bundle "config --local path vendor"
+ bundle "config --local without emo test"
+ bundle! :install
expect(out).to include(bundle_show_path_message)
expect(out).to include("Gems in the groups emo and test were not installed")
expect(out).to include(bundle_complete_message)
- bundle! :install, forgotten_command_line_options(:without => "emo obama test", :path => "vendor")
+ bundle "config --local path vendor"
+ bundle "config --local without emo obama test"
+ bundle! :install
expect(out).to include(bundle_show_path_message)
expect(out).to include("Gems in the groups emo, obama and test were not installed")
expect(out).to include(bundle_complete_message)
@@ -75,8 +85,11 @@ RSpec.describe "post bundle message" do
end
describe "with an absolute `path` inside the cwd configured" do
+ let(:bundle_path) { bundled_app("cache") }
+
it "shows proper messages according to the configured groups" do
- bundle! :install, forgotten_command_line_options(:path => bundled_app("cache"))
+ bundle "config --local path #{bundle_path}"
+ bundle! :install
expect(out).to include("Bundled gems are installed into `./cache`")
expect(out).to_not include("Gems in the group")
expect(out).to include(bundle_complete_message)
@@ -84,8 +97,11 @@ RSpec.describe "post bundle message" do
end
describe "with `path` configured to an absolute path outside the cwd" do
+ let(:bundle_path) { tmp("not_bundled_app") }
+
it "shows proper messages according to the configured groups" do
- bundle! :install, forgotten_command_line_options(:path => tmp("not_bundled_app"))
+ bundle "config --local path #{bundle_path}"
+ bundle! :install
expect(out).to include("Bundled gems are installed into `#{tmp("not_bundled_app")}`")
expect(out).to_not include("Gems in the group")
expect(out).to include(bundle_complete_message)
@@ -136,7 +152,7 @@ The source does not contain any versions of 'not-a-gem'
end
end
- describe "for second bundle install run" do
+ describe "for second bundle install run", :bundler => "< 3" do
it "without any options" do
2.times { bundle :install }
expect(out).to include(bundle_show_message)
@@ -146,7 +162,7 @@ The source does not contain any versions of 'not-a-gem'
end
it "with --without one group" do
- bundle! :install, forgotten_command_line_options(:without => "emo")
+ bundle! "install --without emo"
bundle! :install
expect(out).to include(bundle_show_message)
expect(out).to include("Gems in the group emo were not installed")
@@ -155,7 +171,7 @@ The source does not contain any versions of 'not-a-gem'
end
it "with --without two groups" do
- bundle! :install, forgotten_command_line_options(:without => "emo test")
+ bundle! "install --without emo test"
bundle! :install
expect(out).to include(bundle_show_message)
expect(out).to include("Gems in the groups emo and test were not installed")
@@ -163,7 +179,7 @@ The source does not contain any versions of 'not-a-gem'
end
it "with --without more groups" do
- bundle! :install, forgotten_command_line_options(:without => "emo obama test")
+ bundle! "install --without emo obama test"
bundle :install
expect(out).to include(bundle_show_message)
expect(out).to include("Gems in the groups emo, obama and test were not installed")
@@ -177,17 +193,20 @@ The source does not contain any versions of 'not-a-gem'
expect(out).not_to include("Gems in the groups")
expect(out).to include(bundle_updated_message)
- bundle! :install, forgotten_command_line_options(:without => "emo")
+ bundle "config --local without emo"
+ bundle! :install
bundle! :update, :all => true
expect(out).to include("Gems in the group emo were not updated")
expect(out).to include(bundle_updated_message)
- bundle! :install, forgotten_command_line_options(:without => "emo test")
+ bundle "config --local without emo test"
+ bundle! :install
bundle! :update, :all => true
expect(out).to include("Gems in the groups emo and test were not updated")
expect(out).to include(bundle_updated_message)
- bundle! :install, forgotten_command_line_options(:without => "emo obama test")
+ bundle "config --local without emo obama test"
+ bundle! :install
bundle! :update, :all => true
expect(out).to include("Gems in the groups emo, obama and test were not updated")
expect(out).to include(bundle_updated_message)
diff --git a/spec/bundler/install/deploy_spec.rb b/spec/bundler/install/deploy_spec.rb
index b7ece9460b..d8f8c76bcb 100644
--- a/spec/bundler/install/deploy_spec.rb
+++ b/spec/bundler/install/deploy_spec.rb
@@ -44,11 +44,9 @@ RSpec.describe "install with --deployment or --frozen" do
it "still works if you are not in the app directory and specify --gemfile" do
bundle! "install"
simulate_new_machine
- bundle! :install,
- forgotten_command_line_options(:gemfile => "#{tmp}/bundled_app/Gemfile",
- :deployment => true,
- :path => "vendor/bundle",
- :dir => tmp)
+ bundle "config --local deployment true"
+ bundle "config --local path vendor/bundle"
+ bundle! "install --gemfile #{tmp}/bundled_app/Gemfile", :dir => tmp
expect(the_bundle).to include_gems "rack 1.0"
end
@@ -60,7 +58,9 @@ RSpec.describe "install with --deployment or --frozen" do
end
G
bundle! :install
- bundle! :install, forgotten_command_line_options(:deployment => true, :without => "test")
+ bundle "config --local deployment true"
+ bundle "config --local without test"
+ bundle! :install
end
it "works when you bundle exec bundle", :ruby_repo do
@@ -80,7 +80,8 @@ RSpec.describe "install with --deployment or --frozen" do
G
bundle! :install
- bundle! :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle! :install
end
it "works when there are credentials in the source URL" do
@@ -90,7 +91,8 @@ RSpec.describe "install with --deployment or --frozen" do
gem "rack-obama", ">= 1.0"
G
- bundle! :install, forgotten_command_line_options(:deployment => true).merge(:artifice => "endpoint_strict_basic_authentication")
+ bundle "config --local deployment true"
+ bundle! :install, :artifice => "endpoint_strict_basic_authentication"
end
it "works with sources given by a block" do
@@ -100,14 +102,16 @@ RSpec.describe "install with --deployment or --frozen" do
end
G
- bundle! :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle! :install
expect(the_bundle).to include_gems "rack 1.0"
end
context "when replacing a host with the same host with credentials" do
before do
- bundle! "install", forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! "install"
gemfile <<-G
source "http://user_name:password@localgemserver.test/"
gem "rack"
@@ -210,7 +214,8 @@ RSpec.describe "install with --deployment or --frozen" do
gem "rack-obama"
G
- bundle :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("deployment mode")
expect(err).to include("You have added to the Gemfile")
expect(err).to include("* rack-obama")
@@ -228,7 +233,10 @@ RSpec.describe "install with --deployment or --frozen" do
expect(the_bundle).to include_gems "path_gem 1.0"
FileUtils.rm_r lib_path("path_gem-1.0")
- bundle! :install, forgotten_command_line_options(:path => ".bundle", :without => "development", :deployment => true).merge(:env => { "DEBUG" => "1" })
+ bundle "config --local path .bundle"
+ bundle "config --local without development"
+ bundle "config --local deployment true"
+ bundle! :install, :env => { "DEBUG" => "1" }
run! "puts :WIN"
expect(out).to eq("WIN")
end
@@ -243,7 +251,9 @@ RSpec.describe "install with --deployment or --frozen" do
expect(the_bundle).to include_gems "path_gem 1.0"
FileUtils.rm_r lib_path("path_gem-1.0")
- bundle :install, forgotten_command_line_options(:path => ".bundle", :deployment => true)
+ bundle "config --local path .bundle"
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("The path `#{lib_path("path_gem-1.0")}` does not exist.")
end
@@ -313,7 +323,8 @@ RSpec.describe "install with --deployment or --frozen" do
gem "activesupport"
G
- bundle :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("deployment mode")
expect(err).to include("You have added to the Gemfile:\n* activesupport\n\n")
expect(err).to include("You have deleted from the Gemfile:\n* rack")
@@ -326,7 +337,8 @@ RSpec.describe "install with --deployment or --frozen" do
gem "rack", :git => "git://hubz.com"
G
- bundle :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("deployment mode")
expect(err).to include("You have added to the Gemfile:\n* source: git://hubz.com (at master)")
expect(err).not_to include("You have changed in the Gemfile")
@@ -345,7 +357,8 @@ RSpec.describe "install with --deployment or --frozen" do
gem "rack"
G
- bundle :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("deployment mode")
expect(err).to include("You have deleted from the Gemfile:\n* source: #{lib_path("rack-1.0")} (at master@#{revision_for(lib_path("rack-1.0"))[0..6]}")
expect(err).not_to include("You have added to the Gemfile")
@@ -368,7 +381,8 @@ RSpec.describe "install with --deployment or --frozen" do
gem "foo", :git => "#{lib_path("rack")}"
G
- bundle :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("deployment mode")
expect(err).to include("You have changed in the Gemfile:\n* rack from `no specified source` to `#{lib_path("rack")} (at master@#{revision_for(lib_path("rack"))[0..6]})`")
expect(err).not_to include("You have added to the Gemfile")
diff --git a/spec/bundler/install/gemfile/eval_gemfile_spec.rb b/spec/bundler/install/gemfile/eval_gemfile_spec.rb
index 44cf052895..59b2932fff 100644
--- a/spec/bundler/install/gemfile/eval_gemfile_spec.rb
+++ b/spec/bundler/install/gemfile/eval_gemfile_spec.rb
@@ -47,7 +47,8 @@ RSpec.describe "bundle install with gemfile that uses eval_gemfile" do
# parsed lockfile and the evaluated gemfile.
it "bundles with deployment mode configured" do
bundle! :install
- bundle! :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle! :install
end
end
diff --git a/spec/bundler/install/gemfile/gemspec_spec.rb b/spec/bundler/install/gemfile/gemspec_spec.rb
index 2ccbc1f3cc..c4a5ea9fe1 100644
--- a/spec/bundler/install/gemfile/gemspec_spec.rb
+++ b/spec/bundler/install/gemfile/gemspec_spec.rb
@@ -290,7 +290,8 @@ RSpec.describe "bundle install from an existing gemspec" do
s.add_dependency "activesupport", ">= 1.0.1"
end
- bundle :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle :install
expect(err).to include("changed")
end
@@ -558,7 +559,8 @@ RSpec.describe "bundle install from an existing gemspec" do
it "installs the ruby platform gemspec and skips dev deps with `without development` configured" do
simulate_platform "ruby"
- install_gemfile! <<-G, forgotten_command_line_options(:without => "development")
+ bundle "config --local without development"
+ install_gemfile! <<-G
source "#{file_uri_for(gem_repo1)}"
gemspec :path => '#{tmp.join("foo")}', :name => 'foo'
G
diff --git a/spec/bundler/install/gemfile/git_spec.rb b/spec/bundler/install/gemfile/git_spec.rb
index d495ca2395..3c34bd4477 100644
--- a/spec/bundler/install/gemfile/git_spec.rb
+++ b/spec/bundler/install/gemfile/git_spec.rb
@@ -1043,7 +1043,8 @@ RSpec.describe "bundle install with git sources" do
simulate_new_machine
- bundle! :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle! :install
end
end
diff --git a/spec/bundler/install/gemfile/path_spec.rb b/spec/bundler/install/gemfile/path_spec.rb
index a733c02512..2625ab3e02 100644
--- a/spec/bundler/install/gemfile/path_spec.rb
+++ b/spec/bundler/install/gemfile/path_spec.rb
@@ -131,7 +131,8 @@ RSpec.describe "bundle install with explicit source paths" do
gem 'foo', :path => File.expand_path("../foo-1.0", __FILE__)
G
- bundle! :install, forgotten_command_line_options(:frozen => true)
+ bundle "config --local frozen true"
+ bundle! :install
expect(exitstatus).to eq(0) if exitstatus
end
diff --git a/spec/bundler/install/gemfile/platform_spec.rb b/spec/bundler/install/gemfile/platform_spec.rb
index e33cb29ef8..65ea2bee07 100644
--- a/spec/bundler/install/gemfile/platform_spec.rb
+++ b/spec/bundler/install/gemfile/platform_spec.rb
@@ -263,7 +263,8 @@ RSpec.describe "bundle install across platforms" do
gem "rack", "1.0.0"
G
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
FileUtils.mv(vendored_gems, bundled_app("vendor/bundle", Gem.ruby_engine, "1.8"))
diff --git a/spec/bundler/install/gemfile/sources_spec.rb b/spec/bundler/install/gemfile/sources_spec.rb
index 6e29d786f1..0176f112d4 100644
--- a/spec/bundler/install/gemfile/sources_spec.rb
+++ b/spec/bundler/install/gemfile/sources_spec.rb
@@ -107,7 +107,8 @@ RSpec.describe "bundle install with gems on multiple sources" do
expect(bundled_app("vendor/cache/rack-1.0.0.gem")).to exist
expect(bundled_app("vendor/cache/rack-obama-1.0.gem")).to exist
- bundle! :install, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ bundle! :install
expect(the_bundle).to include_gems("rack-obama 1.0.0", "rack 1.0.0")
end
@@ -485,7 +486,8 @@ RSpec.describe "bundle install with gems on multiple sources" do
gem 'bar', '~> 0.1', :source => '#{file_uri_for(gem_repo4)}'
G
- bundle! :install, forgotten_command_line_options(:path => "../gems/system")
+ bundle "config --local path ../gems/system"
+ bundle! :install
# And then we add some new versions...
update_repo4 do
diff --git a/spec/bundler/install/gems/compact_index_spec.rb b/spec/bundler/install/gems/compact_index_spec.rb
index b9ceefa929..49ea82e56d 100644
--- a/spec/bundler/install/gems/compact_index_spec.rb
+++ b/spec/bundler/install/gems/compact_index_spec.rb
@@ -80,7 +80,9 @@ RSpec.describe "compact index api" do
G
bundle! :install, :artifice => "compact_index"
- bundle! :install, forgotten_command_line_options(:deployment => true, :path => "vendor/bundle").merge(:artifice => "compact_index")
+ bundle "config --local deployment true"
+ bundle "config --local path vendor/bundle"
+ bundle! :install, :artifice => "compact_index"
expect(out).to include("Fetching gem metadata from #{source_uri}")
expect(the_bundle).to include_gems "rack 1.0.0"
end
@@ -130,7 +132,8 @@ RSpec.describe "compact index api" do
G
bundle "install", :artifice => "compact_index"
- bundle! :install, forgotten_command_line_options(:deployment => true).merge(:artifice => "compact_index")
+ bundle "config --local deployment true"
+ bundle! :install, :artifice => "compact_index"
expect(the_bundle).to include_gems("foo 1.0")
end
diff --git a/spec/bundler/install/gems/dependency_api_spec.rb b/spec/bundler/install/gems/dependency_api_spec.rb
index 5b1beeba43..2927e19649 100644
--- a/spec/bundler/install/gems/dependency_api_spec.rb
+++ b/spec/bundler/install/gems/dependency_api_spec.rb
@@ -60,7 +60,9 @@ RSpec.describe "gemcutter's dependency API" do
G
bundle :install, :artifice => "endpoint"
- bundle! :install, forgotten_command_line_options(:deployment => true, :path => "vendor/bundle").merge(:artifice => "endpoint")
+ bundle "config --local deployment true"
+ bundle "config --local path vendor/bundle"
+ bundle! :install, :artifice => "endpoint"
expect(out).to include("Fetching gem metadata from #{source_uri}")
expect(the_bundle).to include_gems "rack 1.0.0"
end
@@ -110,7 +112,8 @@ RSpec.describe "gemcutter's dependency API" do
G
bundle "install", :artifice => "endpoint"
- bundle! :install, forgotten_command_line_options(:deployment => true).merge(:artifice => "endpoint")
+ bundle "config --local deployment true"
+ bundle! :install, :artifice => "endpoint"
expect(the_bundle).to include_gems("foo 1.0")
end
diff --git a/spec/bundler/install/gems/standalone_spec.rb b/spec/bundler/install/gems/standalone_spec.rb
index c45ecd52ec..8cb6cd6588 100644
--- a/spec/bundler/install/gems/standalone_spec.rb
+++ b/spec/bundler/install/gems/standalone_spec.rb
@@ -55,7 +55,8 @@ RSpec.shared_examples "bundle install --standalone" do
source "#{file_uri_for(gem_repo1)}"
gem "rails"
G
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => true, :dir => cwd
end
let(:expected_gems) do
@@ -70,7 +71,8 @@ RSpec.shared_examples "bundle install --standalone" do
describe "with gems with native extension", :ruby_repo do
before do
- install_gemfile <<-G, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ install_gemfile <<-G, :standalone => true, :dir => cwd
source "#{file_uri_for(gem_repo1)}"
gem "very_simple_binary"
G
@@ -103,7 +105,8 @@ RSpec.shared_examples "bundle install --standalone" do
end
G
end
- install_gemfile <<-G, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ install_gemfile <<-G, :standalone => true, :dir => cwd
gem "bar", :git => "#{lib_path("bar-1.0")}"
G
end
@@ -123,7 +126,8 @@ RSpec.shared_examples "bundle install --standalone" do
gem "rails"
gem "devise", :git => "#{lib_path("devise-1.0")}"
G
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => true, :dir => cwd
end
let(:expected_gems) do
@@ -150,7 +154,8 @@ RSpec.shared_examples "bundle install --standalone" do
gem "rack-test"
end
G
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => true, :dir => cwd
end
let(:expected_gems) do
@@ -163,7 +168,8 @@ RSpec.shared_examples "bundle install --standalone" do
include_examples "common functionality"
it "allows creating a standalone file with limited groups" do
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => "default", :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => "default", :dir => cwd
load_error_ruby <<-RUBY, "spec"
$:.unshift File.expand_path("bundle")
@@ -179,7 +185,9 @@ RSpec.shared_examples "bundle install --standalone" do
end
it "allows `without` configuration to limit the groups used in a standalone" do
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle"), :without => "test").merge(:standalone => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle "config --local without test"
+ bundle! :install, :standalone => true, :dir => cwd
load_error_ruby <<-RUBY, "spec"
$:.unshift File.expand_path("bundle")
@@ -195,7 +203,8 @@ RSpec.shared_examples "bundle install --standalone" do
end
it "allows `path` configuration to change the location of the standalone bundle" do
- bundle! "install", forgotten_command_line_options(:path => "path/to/bundle").merge(:standalone => true, :dir => cwd)
+ bundle "config --local path path/to/bundle"
+ bundle! "install", :standalone => true, :dir => cwd
ruby <<-RUBY
$:.unshift File.expand_path("path/to/bundle")
@@ -209,8 +218,10 @@ RSpec.shared_examples "bundle install --standalone" do
end
it "allows `without` to limit the groups used in a standalone" do
- bundle! :install, forgotten_command_line_options(:without => "test").merge(:dir => cwd)
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :dir => cwd)
+ bundle "config --local without test"
+ bundle! :install, :dir => cwd
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => true, :dir => cwd
load_error_ruby <<-RUBY, "spec"
$:.unshift File.expand_path("bundle")
@@ -235,7 +246,8 @@ RSpec.shared_examples "bundle install --standalone" do
source "#{source_uri}"
gem "rails"
G
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :artifice => "endpoint", :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => true, :artifice => "endpoint", :dir => cwd
end
let(:expected_gems) do
@@ -255,7 +267,8 @@ RSpec.shared_examples "bundle install --standalone" do
source "#{file_uri_for(gem_repo1)}"
gem "rails"
G
- bundle! :install, forgotten_command_line_options(:path => bundled_app("bundle")).merge(:standalone => true, :binstubs => true, :dir => cwd)
+ bundle "config --local path #{bundled_app("bundle")}"
+ bundle! :install, :standalone => true, :binstubs => true, :dir => cwd
end
let(:expected_gems) do
diff --git a/spec/bundler/install/git_spec.rb b/spec/bundler/install/git_spec.rb
index 1b32991fa8..fe3d600ec6 100644
--- a/spec/bundler/install/git_spec.rb
+++ b/spec/bundler/install/git_spec.rb
@@ -57,7 +57,9 @@ RSpec.describe "bundle install" do
foo!
L
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle", :without => "development")
+ bundle "config --local path vendor/bundle"
+ bundle "config --local without development"
+ bundle! :install
expect(out).to include("Bundle complete!")
end
diff --git a/spec/bundler/install/path_spec.rb b/spec/bundler/install/path_spec.rb
index bed28ed3e2..4bd9c1f5f4 100644
--- a/spec/bundler/install/path_spec.rb
+++ b/spec/bundler/install/path_spec.rb
@@ -14,7 +14,8 @@ RSpec.describe "bundle install" do
end
it "does not use available system gems with bundle --path vendor/bundle", :bundler => "< 3" do
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
expect(the_bundle).to include_gems "rack 1.0.0"
end
@@ -22,14 +23,16 @@ RSpec.describe "bundle install" do
dir = bundled_app("bun++dle")
dir.mkpath
- bundle! :install, forgotten_command_line_options(:path => dir.join("vendor/bundle")).merge(:dir => dir)
+ bundle "config --local path #{dir.join("vendor/bundle")}"
+ bundle! :install, :dir => dir
expect(out).to include("installed into `./vendor/bundle`")
dir.rmtree
end
it "prints a warning to let the user know what has happened with bundle --path vendor/bundle" do
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
expect(out).to include("gems are installed into `./vendor/bundle`")
end
@@ -98,7 +101,8 @@ RSpec.describe "bundle install" do
context "when set via #{type}" do
it "installs gems to a path if one is specified" do
set_bundle_path(type, bundled_app("vendor2").to_s)
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
expect(vendored_gems("gems/rack-1.0.0")).to be_directory
expect(bundled_app("vendor2")).not_to be_directory
@@ -147,7 +151,8 @@ RSpec.describe "bundle install" do
end
it "sets BUNDLE_PATH as the first argument to bundle install" do
- bundle! :install, forgotten_command_line_options(:path => "./vendor/bundle")
+ bundle "config --local path ./vendor/bundle"
+ bundle! :install
expect(vendored_gems("gems/rack-1.0.0")).to be_directory
expect(the_bundle).to include_gems "rack 1.0.0"
@@ -156,7 +161,8 @@ RSpec.describe "bundle install" do
it "disables system gems when passing a path to install" do
# This is so that vendored gems can be distributed to others
build_gem "rack", "1.1.0", :to_system => true
- bundle! :install, forgotten_command_line_options(:path => "./vendor/bundle")
+ bundle "config --local path ./vendor/bundle"
+ bundle! :install
expect(vendored_gems("gems/rack-1.0.0")).to be_directory
expect(the_bundle).to include_gems "rack 1.0.0"
@@ -172,7 +178,8 @@ RSpec.describe "bundle install" do
gem "very_simple_binary"
G
- bundle! :install, forgotten_command_line_options(:path => "./vendor/bundle")
+ bundle "config --local path ./vendor/bundle"
+ bundle! :install
expect(vendored_gems("gems/very_simple_binary-1.0")).to be_directory
expect(vendored_gems("extensions")).to be_directory
@@ -183,7 +190,8 @@ RSpec.describe "bundle install" do
run "require 'very_simple_binary_c'"
expect(err).to include("Bundler::GemNotFound")
- bundle :install, forgotten_command_line_options(:path => "./vendor/bundle")
+ bundle "config --local path ./vendor/bundle"
+ bundle :install
expect(vendored_gems("gems/very_simple_binary-1.0")).to be_directory
expect(vendored_gems("extensions")).to be_directory
@@ -202,7 +210,8 @@ RSpec.describe "bundle install" do
gem "rack"
G
- bundle :install, forgotten_command_line_options(:path => "bundle")
+ bundle "config --local path bundle"
+ bundle :install
expect(err).to include("file already exists")
end
end
diff --git a/spec/bundler/lock/lockfile_spec.rb b/spec/bundler/lock/lockfile_spec.rb
index 1ec52d4238..ea2cad29e2 100644
--- a/spec/bundler/lock/lockfile_spec.rb
+++ b/spec/bundler/lock/lockfile_spec.rb
@@ -1293,7 +1293,8 @@ RSpec.describe "the lockfile format" do
gem "omg", :git => "#{lib_path("omg")}", :branch => 'master'
G
- bundle! :install, forgotten_command_line_options(:path => "vendor")
+ bundle "config --local path vendor"
+ bundle! :install
expect(the_bundle).to include_gems "omg 1.0"
# Create a Gemfile.lock that has duplicate GIT sections
diff --git a/spec/bundler/plugins/install_spec.rb b/spec/bundler/plugins/install_spec.rb
index f530f2d740..dbf4ea2f15 100644
--- a/spec/bundler/plugins/install_spec.rb
+++ b/spec/bundler/plugins/install_spec.rb
@@ -215,7 +215,8 @@ RSpec.describe "bundler plugin install" do
gem 'rack', "1.0.0"
G
- install_gemfile! <<-G, forgotten_command_line_options(:deployment => true)
+ bundle "config --local deployment true"
+ install_gemfile! <<-G
source '#{file_uri_for(gem_repo2)}'
plugin 'foo'
gem 'rack', "1.0.0"
diff --git a/spec/bundler/plugins/source/example_spec.rb b/spec/bundler/plugins/source/example_spec.rb
index 208f612099..57e6db5d6b 100644
--- a/spec/bundler/plugins/source/example_spec.rb
+++ b/spec/bundler/plugins/source/example_spec.rb
@@ -156,7 +156,8 @@ RSpec.describe "real source plugins" do
end
it "copies repository to vendor cache and uses it even when installed with `path` configured" do
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
bundle "config set cache_all true"
bundle! :cache
@@ -167,7 +168,8 @@ RSpec.describe "real source plugins" do
end
it "bundler package copies repository to vendor cache" do
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
bundle "config set cache_all true"
bundle! :cache
diff --git a/spec/bundler/runtime/setup_spec.rb b/spec/bundler/runtime/setup_spec.rb
index c16515147e..dc1034cf04 100644
--- a/spec/bundler/runtime/setup_spec.rb
+++ b/spec/bundler/runtime/setup_spec.rb
@@ -481,13 +481,15 @@ RSpec.describe "Bundler.setup" do
end
it "works even when the cache directory has been deleted" do
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
FileUtils.rm_rf vendored_gems("cache")
expect(the_bundle).to include_gems "rack 1.0.0"
end
it "does not randomly change the path when specifying --path and the bundle directory becomes read only" do
- bundle! :install, forgotten_command_line_options(:path => "vendor/bundle")
+ bundle "config --local path vendor/bundle"
+ bundle! :install
with_read_only("#{bundled_app}/**/*") do
expect(the_bundle).to include_gems "rack 1.0.0"
@@ -590,7 +592,8 @@ RSpec.describe "Bundler.setup" do
describe "when excluding groups" do
it "doesn't change the resolve if --without is used" do
- install_gemfile <<-G, forgotten_command_line_options(:without => :rails)
+ bundle "config --local without rails"
+ install_gemfile <<-G
source "#{file_uri_for(gem_repo1)}"
gem "activesupport"
@@ -605,7 +608,8 @@ RSpec.describe "Bundler.setup" do
end
it "remembers --without and does not bail on bare Bundler.setup" do
- install_gemfile <<-G, forgotten_command_line_options(:without => :rails)
+ bundle "config --local without rails"
+ install_gemfile <<-G
source "#{file_uri_for(gem_repo1)}"
gem "activesupport"
@@ -620,7 +624,8 @@ RSpec.describe "Bundler.setup" do
end
it "remembers --without and does not include groups passed to Bundler.setup" do
- install_gemfile <<-G, forgotten_command_line_options(:without => :rails)
+ bundle "config --local without rails"
+ install_gemfile <<-G
source "#{file_uri_for(gem_repo1)}"
gem "activesupport"
diff --git a/spec/bundler/support/helpers.rb b/spec/bundler/support/helpers.rb
index c9d292a026..fe786d4381 100644
--- a/spec/bundler/support/helpers.rb
+++ b/spec/bundler/support/helpers.rb
@@ -130,21 +130,6 @@ module Spec
end
bang :bundle
- def forgotten_command_line_options(options)
- options = options.map do |k, v|
- v = '""' if v && v.to_s.empty?
- [k, v]
- end
- options.each do |k, v|
- if v.nil?
- bundle! "config unset #{k}"
- else
- bundle! "config set --local #{k} #{v}"
- end
- end
- {}
- end
-
def bundler(cmd, options = {})
options[:bundle_bin] = system_gem_path.join("bin/bundler")
bundle(cmd, options)