runcoderun-gem_sync 1.3.3 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/examples/rcr/gem_sync_example.rb +4 -3
- data/gem_sync.gemspec +1 -1
- data/lib/rcr/gem_sync.rb +6 -6
- metadata +1 -1
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.4.0
|
@@ -154,16 +154,17 @@ EOL
|
|
154
154
|
|
155
155
|
describe "read gem list" do
|
156
156
|
it "should read the gem list" do
|
157
|
-
gem_sync = Rcr::GemSync.new(["--github"])
|
157
|
+
gem_sync = Rcr::GemSync.new(["--github"])
|
158
158
|
gem_sync.expects(:open).with(Rcr::GemSync::RCR_GITHUB_GEM_LIST).returns(StringIO.new)
|
159
159
|
gem_sync.read_gem_list
|
160
160
|
end
|
161
161
|
end
|
162
162
|
|
163
|
-
describe "
|
164
|
-
it "installs
|
163
|
+
describe "regressions" do
|
164
|
+
it "installs specific version of rails, even if there is that specific version installed for a different gem" do
|
165
165
|
gem_sync = Rcr::GemSync.new(["--github"])
|
166
166
|
installed_gems = <<EOL
|
167
|
+
some-other-gem (2.2.2)
|
167
168
|
rails (2.3.4, 2.3.2, 2.1.2, 2.1.1, 2.1.0, 2.0.4, 2.0.2, 1.2.6, 1.2.5, 1.2.2, 1.2.1)
|
168
169
|
relevance-multi_rails (0.0.8)
|
169
170
|
remarkable_rails (3.1.10)
|
data/gem_sync.gemspec
CHANGED
data/lib/rcr/gem_sync.rb
CHANGED
@@ -62,17 +62,17 @@ module Rcr
|
|
62
62
|
install_from_rubyforge(rubygem) || install_from_github(rubygem)
|
63
63
|
end
|
64
64
|
|
65
|
-
def gem_installed?(
|
66
|
-
installed_gems.any? { |installed| installed.name == name }
|
65
|
+
def gem_installed?(requested)
|
66
|
+
installed_gems.any? { |installed| installed.name == requested.name }
|
67
67
|
end
|
68
68
|
|
69
|
-
def gem_version_installed?(
|
70
|
-
return true if version.nil?
|
71
|
-
installed_gems.any? { |
|
69
|
+
def gem_version_installed?(requested)
|
70
|
+
return true if requested.version.nil?
|
71
|
+
installed_gems.select { |gem| gem.name == requested.name }.any? { |gem| gem.version == requested.version }
|
72
72
|
end
|
73
73
|
|
74
74
|
def installed?(requested)
|
75
|
-
result = gem_installed?(requested
|
75
|
+
result = gem_installed?(requested) && gem_version_installed?(requested)
|
76
76
|
puts "Skipping installation of #{requested.name} #{requested.version}, as its already installed" if verbose? && result
|
77
77
|
result
|
78
78
|
end
|