diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index cf7b50e555..420203167b 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -73,9 +73,11 @@ class Formula when @head && ARGV.build_head? then @head # --HEAD when @devel && ARGV.build_devel? then @devel # --devel when @bottle && install_bottle?(self) then @bottle # bottle available + when @stable then @stable when @devel && @stable.nil? then @devel # devel-only when @head && @stable.nil? then @head # head-only - else @stable + else + raise "Formulae require at least a URL" end end diff --git a/Library/Homebrew/test/test_formula_validation.rb b/Library/Homebrew/test/test_formula_validation.rb index 5c6bf28884..22b0eb06cf 100644 --- a/Library/Homebrew/test/test_formula_validation.rb +++ b/Library/Homebrew/test/test_formula_validation.rb @@ -77,4 +77,9 @@ class FormulaValidationTests < Test::Unit::TestCase end end end + + def test_empty_formula_invalid + e = assert_raises(RuntimeError) { formula {} } + assert_equal "Formulae require at least a URL", e.message + end end