From f0de31229dfe1dac6bbdcede54873c3f6e4619c4 Mon Sep 17 00:00:00 2001 From: Vlad Bokov Date: Thu, 5 Feb 2015 19:55:30 +0600 Subject: [PATCH] remove duplicate sources --- lib/appraisal/gemfile.rb | 2 +- spec/appraisal/gemfile_spec.rb | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/appraisal/gemfile.rb b/lib/appraisal/gemfile.rb index 94d12ac0..f251acef 100644 --- a/lib/appraisal/gemfile.rb +++ b/lib/appraisal/gemfile.rb @@ -97,7 +97,7 @@ def gemspec(options = {}) protected def source_entry - @sources.map { |source| "source #{source.inspect}" }.join("\n") + @sources.uniq.map { |source| "source #{source.inspect}" }.join("\n") end def ruby_version_entry diff --git a/spec/appraisal/gemfile_spec.rb b/spec/appraisal/gemfile_spec.rb index f61aef7e..91637063 100644 --- a/spec/appraisal/gemfile_spec.rb +++ b/spec/appraisal/gemfile_spec.rb @@ -17,6 +17,13 @@ expect(gemfile.to_s.strip).to eq %{source "one"\nsource "two"} end + it "ignores duplicate sources" do + gemfile = Appraisal::Gemfile.new + gemfile.source "one" + gemfile.source "one" + expect(gemfile.to_s.strip).to eq %{source "one"} + end + it "preserves dependency order" do gemfile = Appraisal::Gemfile.new gemfile.gem "one"