Handle only HEAD kegs in to_latest_kegs
This commit is contained in:
parent
0fc7762e99
commit
3dde12c634
@ -324,7 +324,11 @@ module Homebrew
|
|||||||
# Return keg if it is the only installed keg
|
# Return keg if it is the only installed keg
|
||||||
return kegs if kegs.length == 1
|
return kegs if kegs.length == 1
|
||||||
|
|
||||||
kegs.reject { |k| k.version.head? }.max_by(&:version)
|
eligible_kegs = kegs.reject { |k| k.version.head? }
|
||||||
|
# Use HEAD kegs if there are no stable kegs
|
||||||
|
eligible_kegs = kegs if eligible_kegs.blank?
|
||||||
|
|
||||||
|
eligible_kegs.max_by(&:version)
|
||||||
end
|
end
|
||||||
|
|
||||||
def resolve_default_keg(name)
|
def resolve_default_keg(name)
|
||||||
|
|||||||
@ -223,12 +223,14 @@ describe Homebrew::CLI::NamedArgs do
|
|||||||
(HOMEBREW_CELLAR/"foo/1.0").mkpath
|
(HOMEBREW_CELLAR/"foo/1.0").mkpath
|
||||||
(HOMEBREW_CELLAR/"foo/2.0").mkpath
|
(HOMEBREW_CELLAR/"foo/2.0").mkpath
|
||||||
(HOMEBREW_CELLAR/"bar/1.0").mkpath
|
(HOMEBREW_CELLAR/"bar/1.0").mkpath
|
||||||
|
(HOMEBREW_CELLAR/"baz/HEAD-1").mkpath
|
||||||
|
(HOMEBREW_CELLAR/"baz/HEAD-2").mkpath
|
||||||
end
|
end
|
||||||
|
|
||||||
it "resolves the latest kegs with #resolve_latest_keg" do
|
it "resolves the latest kegs with #resolve_latest_keg" do
|
||||||
latest_kegs = described_class.new("foo", "bar").to_latest_kegs
|
latest_kegs = described_class.new("foo", "bar", "baz").to_latest_kegs
|
||||||
expect(latest_kegs.map(&:name)).to eq ["foo", "bar"]
|
expect(latest_kegs.map(&:name)).to eq ["foo", "bar", "baz"]
|
||||||
expect(latest_kegs.map { |k| k.version.version.to_s }).to eq ["2.0", "1.0"]
|
expect(latest_kegs.map { |k| k.version.version.to_s }).to eq ["2.0", "1.0", "HEAD-1"]
|
||||||
end
|
end
|
||||||
|
|
||||||
it "when there are no matching kegs returns an empty array" do
|
it "when there are no matching kegs returns an empty array" do
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user