diff options
| author | Jack Nagel | 2013-12-09 14:36:10 -0600 |
|---|---|---|
| committer | Jack Nagel | 2013-12-09 14:36:10 -0600 |
| commit | 677c78d77e917c21dd23ad09add51f93a8c97097 (patch) | |
| tree | 2fed96ae1babcd583765067ac33b470ed1233c88 /Library/Homebrew | |
| parent | 109e9dc58bb71d9b17c10c28d434556b56c08b1c (diff) | |
| download | brew-677c78d77e917c21dd23ad09add51f93a8c97097.tar.bz2 | |
Pass deps collection to be expanded as a parameter
Diffstat (limited to 'Library/Homebrew')
| -rw-r--r-- | Library/Homebrew/dependency.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_dependency_expansion.rb | 5 |
2 files changed, 8 insertions, 3 deletions
diff --git a/Library/Homebrew/dependency.rb b/Library/Homebrew/dependency.rb index fda491b99..f492b9a6e 100644 --- a/Library/Homebrew/dependency.rb +++ b/Library/Homebrew/dependency.rb @@ -75,8 +75,8 @@ class Dependency # the list. # The default filter, which is applied when a block is not given, omits # optionals and recommendeds based on what the dependent has asked for. - def expand(dependent, &block) - deps = dependent.deps.map do |dep| + def expand(dependent, deps=dependent.deps, &block) + expanded_deps = deps.map do |dep| case action(dependent, dep, &block) when :prune next [] @@ -89,7 +89,7 @@ class Dependency end end.flatten - merge_repeats(deps) + merge_repeats(expanded_deps) end def action(dependent, dep, &block) diff --git a/Library/Homebrew/test/test_dependency_expansion.rb b/Library/Homebrew/test/test_dependency_expansion.rb index cf22b6170..b34cd35f4 100644 --- a/Library/Homebrew/test/test_dependency_expansion.rb +++ b/Library/Homebrew/test/test_dependency_expansion.rb @@ -108,4 +108,9 @@ class DependencyExpansionTests < Test::Unit::TestCase assert_equal [@foo, @baz], deps end + + def test_deps_with_collection_argument + assert_equal [@foo, @bar, @baz, @qux], @f.deps + assert_equal [@bar, @baz], Dependency.expand(@f, [@bar, @baz]) + end end |
