diff options
author | Samuel Giddins <segiddins@segiddins.me> | 2016-07-22 12:25:36 -0400 |
---|---|---|
committer | Samuel Giddins <segiddins@segiddins.me> | 2016-07-22 12:25:36 -0400 |
commit | 9e0c41d0cc7fb1a7eb0e43802867a0a990166cb7 (patch) | |
tree | 27b3b293a07d0c5e017d0a868c8e7a90853a5f9e /spec/install/gemfile | |
parent | 608cf3144439287ccb181593fbb40d5051063da4 (diff) | |
download | bundler-9e0c41d0cc7fb1a7eb0e43802867a0a990166cb7.tar.gz |
Reduce code de-duplication in gemspec spec
Diffstat (limited to 'spec/install/gemfile')
-rw-r--r-- | spec/install/gemfile/gemspec_spec.rb | 42 |
1 files changed, 14 insertions, 28 deletions
diff --git a/spec/install/gemfile/gemspec_spec.rb b/spec/install/gemfile/gemspec_spec.rb index cae005ff..f601a7de 100644 --- a/spec/install/gemfile/gemspec_spec.rb +++ b/spec/install/gemfile/gemspec_spec.rb @@ -269,12 +269,19 @@ describe "bundle install from an existing gemspec" do context "bundled for ruby and jruby" do let(:platform_specific_type) { :runtime } + let(:dependency) { "platform_specific" } before do + build_repo2 do + build_gem "indirect_platform_specific" do |s| + s.add_runtime_dependency "platform_specific" + end + end + build_lib "foo", :path => "." do |s| if platform_specific_type == :runtime - s.add_runtime_dependency "platform_specific" + s.add_runtime_dependency dependency elsif platform_specific_type == :development - s.add_development_dependency "platform_specific" + s.add_development_dependency dependency else raise "wrong dependency type #{platform_specific_type}, can only be :development or :runtime" end @@ -283,7 +290,7 @@ describe "bundle install from an existing gemspec" do %w(ruby jruby).each do |platform| simulate_platform(platform) do install_gemfile <<-G - source "file://#{gem_repo1}" + source "file://#{gem_repo2}" gemspec G end @@ -307,7 +314,7 @@ describe "bundle install from an existing gemspec" do platform_specific GEM - remote: file:#{gem_repo1}/ + remote: file:#{gem_repo2}/ specs: platform_specific (1.0) platform_specific (1.0-java) @@ -337,7 +344,7 @@ describe "bundle install from an existing gemspec" do foo (1.0) GEM - remote: file:#{gem_repo1}/ + remote: file:#{gem_repo2}/ specs: platform_specific (1.0) platform_specific (1.0-java) @@ -357,29 +364,8 @@ describe "bundle install from an existing gemspec" do end context "with an indirect platform-specific development dependency" do - before do - build_repo2 do - build_gem "indirect_platform_specific" do |s| - s.add_runtime_dependency "platform_specific" - end - end - - build_lib "foo", :path => "." do |s| - s.add_development_dependency "indirect_platform_specific" - end - - %w(ruby jruby).each do |platform| - simulate_platform(platform) do - install_gemfile <<-G - source "file://#{gem_repo2}" - gemspec - G - end - end - - simulate_platform "ruby" - bundle :install - end + let(:platform_specific_type) { :development } + let(:dependency) { "indirect_platform_specific" } it "keeps java dependencies in the lockfile" do should_be_installed "foo 1.0", "indirect_platform_specific 1.0", "platform_specific 1.0 RUBY" |