aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Homebrew/formula.rb2
-rw-r--r--Library/Homebrew/test/formula_test.rb15
2 files changed, 12 insertions, 5 deletions
diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb
index c80cd517f..e1846424f 100644
--- a/Library/Homebrew/formula.rb
+++ b/Library/Homebrew/formula.rb
@@ -1505,7 +1505,7 @@ class Formula
# Returns a list of Dependency objects that are required at runtime.
# @private
def runtime_dependencies
- recursive_dependencies.reject(&:build?)
+ recursive_dependencies { |_, dep| Dependency.prune if dep.build? }
end
# Returns a list of formulae depended on by this formula that aren't
diff --git a/Library/Homebrew/test/formula_test.rb b/Library/Homebrew/test/formula_test.rb
index a6db1b57f..28d376b7c 100644
--- a/Library/Homebrew/test/formula_test.rb
+++ b/Library/Homebrew/test/formula_test.rb
@@ -651,12 +651,19 @@ class FormulaTests < Homebrew::TestCase
f4 = formula("f4") do
url "f4-1.0"
- depends_on "f3"
+ depends_on "f1"
end
+ stub_formula_loader f4
- assert_equal %w[f3], f4.deps.map(&:name)
- assert_equal %w[f1 f2 f3], f4.recursive_dependencies.map(&:name)
- assert_equal %w[f2 f3], f4.runtime_dependencies.map(&:name)
+ f5 = formula("f5") do
+ url "f5-1.0"
+ depends_on "f3" => :build
+ depends_on "f4"
+ end
+
+ assert_equal %w[f3 f4], f5.deps.map(&:name)
+ assert_equal %w[f1 f2 f3 f4], f5.recursive_dependencies.map(&:name)
+ assert_equal %w[f1 f4], f5.runtime_dependencies.map(&:name)
end
def test_to_hash