Skip to content
Snippets Groups Projects
Commit b6792fc7 authored by Mike McQuaid's avatar Mike McQuaid Committed by GitHub
Browse files

Merge pull request #2401 from wjlroe/print-pinned-on-outdated

Include the pinned version in brew outdated output for pinned formulae
parents 3805850e 996dcdee
No related branches found
No related tags found
No related merge requests found
......@@ -64,7 +64,9 @@ module Homebrew
"#{full_name} (#{kegs.map(&:version).join(", ")})"
end.join(", ")
puts "#{outdated_versions} < #{current_version}"
pinned_version = " [pinned at #{f.pinned_version}]" if f.pinned?
puts "#{outdated_versions} < #{current_version}#{pinned_version}"
else
puts f.full_installed_specified_name
end
......@@ -86,7 +88,9 @@ module Homebrew
json << { name: f.full_name,
installed_versions: outdated_versions.collect(&:to_s),
current_version: current_version }
current_version: current_version,
pinned: f.pinned?,
pinned_version: f.pinned_version }
end
puts JSON.generate(json)
......
describe "brew outdated", :integration_test do
it "prints outdated Formulae" do
setup_test_formula "testball"
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
expect { brew "outdated" }
.to output("testball\n").to_stdout
.and not_to_output.to_stderr
.and be_a_success
context "quiet output" do
it "prints outdated Formulae" do
setup_test_formula "testball"
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
expect { brew "outdated" }
.to output("testball\n").to_stdout
.and not_to_output.to_stderr
.and be_a_success
end
end
context "verbose output" do
it "prints out the installed and newer versions" do
setup_test_formula "testball"
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
expect { brew "outdated", "--verbose" }
.to output("testball (0.0.1) < 0.1\n").to_stdout
.and not_to_output.to_stderr
.and be_a_success
end
end
context "pinned formula, verbose output" do
it "prints out the pinned version" do
setup_test_formula "testball"
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
shutup do
expect { brew "pin", "testball" }.to be_a_success
end
expect { brew "outdated", "--verbose" }
.to output("testball (0.0.1) < 0.1 [pinned at 0.0.1]\n").to_stdout
.and not_to_output.to_stderr
.and be_a_success
end
end
context "json output" do
it "includes pinned version in the json output" do
setup_test_formula "testball"
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
shutup do
expect { brew "pin", "testball" }.to be_a_success
end
expected_json = [
{
name: "testball",
installed_versions: ["0.0.1"],
current_version: "0.1",
pinned: true,
pinned_version: "0.0.1",
},
].to_json
expect { brew "outdated", "--json=v1" }
.to output(expected_json + "\n").to_stdout
.and not_to_output.to_stderr
.and be_a_success
end
it "has no pinned version when the formula isn't pinned" do
setup_test_formula "testball"
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
expected_json = [
{
name: "testball",
installed_versions: ["0.0.1"],
current_version: "0.1",
pinned: false,
pinned_version: nil,
},
].to_json
expect { brew "outdated", "--json=v1" }
.to output(expected_json + "\n").to_stdout
.and not_to_output.to_stderr
.and be_a_success
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment