add helpers for formula tests
This commit is contained in:
parent
f4ae1c9e1b
commit
c003e805be
@ -25,6 +25,8 @@ module Homebrew
|
||||
FailedAssertion = Test::Unit::AssertionFailedError
|
||||
end
|
||||
|
||||
require "formula_assertions"
|
||||
|
||||
def test
|
||||
raise FormulaUnspecifiedError if ARGV.named.empty?
|
||||
|
||||
@ -47,6 +49,7 @@ module Homebrew
|
||||
puts "Testing #{f.name}"
|
||||
|
||||
f.extend(Test::Unit::Assertions)
|
||||
f.extend(Homebrew::Assertions)
|
||||
|
||||
begin
|
||||
# tests can also return false to indicate failure
|
||||
|
||||
23
Library/Homebrew/formula_assertions.rb
Normal file
23
Library/Homebrew/formula_assertions.rb
Normal file
@ -0,0 +1,23 @@
|
||||
require 'test/unit/assertions'
|
||||
|
||||
module Homebrew
|
||||
module Assertions
|
||||
include Test::Unit::Assertions
|
||||
|
||||
# Returns the output of running cmd, and asserts the exit status
|
||||
def shell_output(cmd, result=0)
|
||||
output = `#{cmd}`
|
||||
assert_equal result, $?.exitstatus
|
||||
output
|
||||
end
|
||||
|
||||
# Returns the output of running the cmd, with the optional input
|
||||
def pipe_output(cmd, input=nil)
|
||||
IO.popen(cmd, "w+") do |pipe|
|
||||
pipe.write(input) unless input.nil?
|
||||
pipe.close_write
|
||||
pipe.read
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
x
Reference in New Issue
Block a user