mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-15 19:56:59 +08:00
53 lines
1.4 KiB
Ruby
53 lines
1.4 KiB
Ruby
describe "brew test", :integration_test do
|
|
it "fails when no argument is given" do
|
|
expect { brew "test" }
|
|
.to output(/This command requires a formula argument/).to_stderr
|
|
.and not_to_output.to_stdout
|
|
.and be_a_failure
|
|
end
|
|
|
|
it "fails when a Formula is not installed" do
|
|
expect { brew "test", testball }
|
|
.to output(/Testing requires the latest version of testball/).to_stderr
|
|
.and not_to_output.to_stdout
|
|
.and be_a_failure
|
|
end
|
|
|
|
it "fails when a Formula has no test" do
|
|
expect { brew "install", testball }.to be_a_success
|
|
|
|
expect { brew "test", testball }
|
|
.to output(/testball defines no test/).to_stderr
|
|
.and not_to_output.to_stdout
|
|
.and be_a_failure
|
|
end
|
|
|
|
it "tests a given Formula" do
|
|
setup_test_formula "testball", <<-EOS.undent
|
|
head "https://github.com/example/testball2.git"
|
|
|
|
devel do
|
|
url "file://#{TEST_FIXTURE_DIR}/tarballs/testball-0.1.tbz"
|
|
sha256 "#{TESTBALL_SHA256}"
|
|
end
|
|
|
|
keg_only "just because"
|
|
|
|
test do
|
|
end
|
|
EOS
|
|
|
|
expect { brew "install", "testball" }.to be_a_success
|
|
|
|
expect { brew "test", "--HEAD", "testball" }
|
|
.to output(/Testing testball/).to_stdout
|
|
.and not_to_output.to_stderr
|
|
.and be_a_success
|
|
|
|
expect { brew "test", "--devel", "testball" }
|
|
.to output(/Testing testball/).to_stdout
|
|
.and not_to_output.to_stderr
|
|
.and be_a_success
|
|
end
|
|
end
|