mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
87 lines
2.3 KiB
Ruby
87 lines
2.3 KiB
Ruby
describe "brew outdated", :integration_test do
|
|
context "quiet output" do
|
|
it "prints outdated Formulae" do
|
|
setup_test_formula "testball"
|
|
(HOMEBREW_CELLAR/"testball/0.0.1/foo").mkpath
|
|
|
|
setup_test_formula "foo"
|
|
(HOMEBREW_CELLAR/"foo/0.0.1/foo").mkpath
|
|
|
|
expect { brew "outdated" }
|
|
.to output("foo\ntestball\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
|
|
|
|
expect { brew "pin", "testball" }.to be_a_success
|
|
|
|
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
|
|
|
|
expect { brew "pin", "testball" }.to be_a_success
|
|
|
|
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
|