Skip to content

Commit 6283eb9

Browse files
Merge pull request #7544 from agrobbin/ar-update-cached-multiple-sources-test-case
add test case to ensure updating with multiple sources + caching maintains the right lockfile (cherry picked from commit abb5d52)
1 parent 6e64935 commit 6283eb9

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed

bundler/spec/commands/update_spec.rb

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -864,6 +864,90 @@
864864
expect(exitstatus).to eq(22)
865865
end
866866

867+
context "with multiple sources and caching enabled" do
868+
before do
869+
build_repo2 do
870+
build_gem "rack", "1.0.0"
871+
872+
build_gem "request_store", "1.0.0" do |s|
873+
s.add_dependency "rack", "1.0.0"
874+
end
875+
end
876+
877+
build_repo4 do
878+
# set up repo with no gems
879+
end
880+
881+
gemfile <<~G
882+
source "#{file_uri_for(gem_repo2)}"
883+
884+
gem "request_store"
885+
886+
source "#{file_uri_for(gem_repo4)}" do
887+
end
888+
G
889+
890+
lockfile <<~L
891+
GEM
892+
remote: #{file_uri_for(gem_repo2)}/
893+
specs:
894+
rack (1.0.0)
895+
request_store (1.0.0)
896+
rack (= 1.0.0)
897+
898+
GEM
899+
remote: #{file_uri_for(gem_repo4)}/
900+
specs:
901+
902+
PLATFORMS
903+
#{local_platform}
904+
905+
DEPENDENCIES
906+
request_store
907+
908+
BUNDLED WITH
909+
#{Bundler::VERSION}
910+
L
911+
end
912+
913+
it "works" do
914+
bundle :install
915+
bundle :cache
916+
917+
update_repo2 do
918+
build_gem "request_store", "1.1.0" do |s|
919+
s.add_dependency "rack", "1.0.0"
920+
end
921+
end
922+
923+
bundle "update request_store"
924+
925+
expect(out).to include("Bundle updated!")
926+
927+
expect(lockfile).to eq <<~L
928+
GEM
929+
remote: #{file_uri_for(gem_repo2)}/
930+
specs:
931+
rack (1.0.0)
932+
request_store (1.1.0)
933+
rack (= 1.0.0)
934+
935+
GEM
936+
remote: #{file_uri_for(gem_repo4)}/
937+
specs:
938+
939+
PLATFORMS
940+
#{local_platform}
941+
942+
DEPENDENCIES
943+
request_store
944+
945+
BUNDLED WITH
946+
#{Bundler::VERSION}
947+
L
948+
end
949+
end
950+
867951
context "with multiple, duplicated sources, with lockfile in old format", bundler: "< 3" do
868952
before do
869953
build_repo2 do

0 commit comments

Comments
 (0)