diff --git a/lib/appraisal/appraisal.rb b/lib/appraisal/appraisal.rb index 761eed9b..b75dbd4b 100644 --- a/lib/appraisal/appraisal.rb +++ b/lib/appraisal/appraisal.rb @@ -107,7 +107,10 @@ def relativize lockfile_content = File.read(lockfile_path) File.open(lockfile_path, 'w') do |file| - file.write lockfile_content.gsub(/#{current_directory}/, relative_path.to_s) + file.write lockfile_content.gsub( + / #{current_directory}/, + " #{relative_path}", + ) end end diff --git a/spec/acceptance/cli/install_spec.rb b/spec/acceptance/cli/install_spec.rb index bde014bf..881f1d48 100644 --- a/spec/acceptance/cli/install_spec.rb +++ b/spec/acceptance/cli/install_spec.rb @@ -40,6 +40,26 @@ not_to include(current_directory) end + it "does not relativize directory of uris in gemfile.lock" do + build_gemspec + add_gemspec_to_gemfile + + build_git_gem("uri_dummy") + uri_dummy_path = "#{current_directory}/uri_dummy" + FileUtils.symlink(File.absolute_path("tmp/gems/uri_dummy"), uri_dummy_path) + + build_appraisal_file <<-APPRAISAL + appraise '1.0.0' do + gem 'uri_dummy', git: 'file://#{uri_dummy_path}' + end + APPRAISAL + + run "appraisal install" + + expect(content_of("gemfiles/1.0.0.gemfile.lock")). + to include("file://#{uri_dummy_path}") + end + context 'with job size', :parallel => true do before do build_appraisal_file <<-Appraisal