From 395d798bc293aae877a92f9535c5621fea226876 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Tue, 18 Nov 2014 16:43:13 +0000 Subject: [PATCH] brew-test-bot: check default_formula requirements. This handles the case where e.g. a default_formula cannot be installed on Yosemite which causes the build to fail. --- Library/Homebrew/cmd/test-bot.rb | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/cmd/test-bot.rb b/Library/Homebrew/cmd/test-bot.rb index f18838f1ac..c9a2bbd7fd 100644 --- a/Library/Homebrew/cmd/test-bot.rb +++ b/Library/Homebrew/cmd/test-bot.rb @@ -322,11 +322,17 @@ module Homebrew puts "#{Tty.blue}==>#{Tty.white} SKIPPING: #{formula_name}#{Tty.reset}" end - def satisfied_requirements? formula, spec + def satisfied_requirements? formula, spec, dependency=nil requirements = formula.send(spec).requirements unsatisfied_requirements = requirements.reject do |requirement| - requirement.satisfied? || requirement.default_formula? + satisfied = false + satisfied = true if requirement.satisfied? + if !satisfied && requirement.default_formula? + default = Formula[requirement.class.default_formula] + satisfied = satisfied_requirements?(default, :stable, formula.name) + end + satisfied end if unsatisfied_requirements.empty? @@ -334,6 +340,7 @@ module Homebrew else name = formula.name name += " (#{spec})" unless spec == :stable + name += " (#{dependency} dependency)" if dependency skip name puts unsatisfied_requirements.map(&:message) false