Convert brew test test to spec.
This commit is contained in:
parent
c7121f6be5
commit
0248b5e357
56
Library/Homebrew/test/dev-cmd/test_spec.rb
Normal file
56
Library/Homebrew/test/dev-cmd/test_spec.rb
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
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
|
||||||
|
shutup do
|
||||||
|
expect { brew "install", testball }.to be_a_success
|
||||||
|
end
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
shutup do
|
||||||
|
expect { brew "install", "testball" }.to be_a_success
|
||||||
|
end
|
||||||
|
|
||||||
|
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
|
||||||
@ -1,30 +0,0 @@
|
|||||||
require "testing_env"
|
|
||||||
|
|
||||||
class IntegrationCommandTestTestFormula < IntegrationCommandTestCase
|
|
||||||
def test_test_formula
|
|
||||||
assert_match "This command requires a formula argument", cmd_fail("test")
|
|
||||||
assert_match "Testing requires the latest version of testball",
|
|
||||||
cmd_fail("test", testball)
|
|
||||||
|
|
||||||
cmd("install", testball)
|
|
||||||
assert_match "testball defines no test", cmd_fail("test", testball)
|
|
||||||
|
|
||||||
setup_test_formula "testball_copy", <<-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
|
|
||||||
|
|
||||||
cmd("install", "testball_copy")
|
|
||||||
assert_match "Testing testball_copy", cmd("test", "--HEAD", "testball_copy")
|
|
||||||
assert_match "Testing testball_copy", cmd("test", "--devel", "testball_copy")
|
|
||||||
end
|
|
||||||
end
|
|
||||||
Loading…
x
Reference in New Issue
Block a user