aboutsummaryrefslogtreecommitdiffstats
path: root/spec/install
diff options
context:
space:
mode:
authorHomu <homu@barosl.com>2016-05-21 06:16:25 +0900
committerHomu <homu@barosl.com>2016-05-21 06:16:25 +0900
commit7351eddd5b70f1fa707404386f2afe34a6127cf0 (patch)
treedcf4c169bf4f3fca6b1dc20de2f446d778abb7a5 /spec/install
parent112272e0c69213e816772b2e39a7f76334502cb8 (diff)
parentb1d5c7d8469b07554c0e64c54c3995fb56136859 (diff)
downloadbundler-7351eddd5b70f1fa707404386f2afe34a6127cf0.tar.gz
Auto merge of #4585 - RochesterinNYC:eval-gemfile-expanded-pathing, r=segiddins
Use the full expanded path of passed `Gemfile` during `eval_gemfile` - fixes #4584
Diffstat (limited to 'spec/install')
-rw-r--r--spec/install/gemfile/eval_gemfile_spec.rb42
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/install/gemfile/eval_gemfile_spec.rb b/spec/install/gemfile/eval_gemfile_spec.rb
new file mode 100644
index 00000000..2660ac98
--- /dev/null
+++ b/spec/install/gemfile/eval_gemfile_spec.rb
@@ -0,0 +1,42 @@
+# frozen_string_literal: true
+require "spec_helper"
+
+describe "bundle install with gemfile that uses eval_gemfile" do
+ before do
+ build_lib("gunks", :path => bundled_app.join("gems/gunks")) do |s|
+ s.name = "gunks"
+ s.version = "0.0.1"
+ end
+ end
+
+ context "eval-ed Gemfile points to an internal gemspec" do
+ before do
+ create_file "Gemfile-other", <<-G
+ gemspec :path => 'gems/gunks'
+ G
+ end
+
+ it "installs the gemspec specified gem" do
+ install_gemfile <<-G
+ eval_gemfile 'Gemfile-other'
+ G
+ expect(out).to include("Resolving dependencies")
+ expect(out).to include("Using gunks 0.0.1 from source at `gems/gunks`")
+ expect(out).to include("Bundle complete")
+ end
+ end
+
+ context "Gemfile uses gemspec paths after eval-ing a Gemfile" do
+ before { create_file "other/Gemfile-other" }
+
+ it "installs the gemspec specified gem" do
+ install_gemfile <<-G
+ eval_gemfile 'other/Gemfile-other'
+ gemspec :path => 'gems/gunks'
+ G
+ expect(out).to include("Resolving dependencies")
+ expect(out).to include("Using gunks 0.0.1 from source at `gems/gunks`")
+ expect(out).to include("Bundle complete")
+ end
+ end
+end