tab: test tap runtime dependencies

This commit is contained in:
Alyssa Ross 2016-09-19 21:03:55 +01:00
parent 41e25209f7
commit 28f707c907
2 changed files with 12 additions and 2 deletions

View File

@ -130,9 +130,16 @@ class TabTests < Homebrew::TestCase
f = formula do f = formula do
url "foo-1.0" url "foo-1.0"
depends_on "bar" depends_on "bar"
depends_on "user/repo/from_tap"
depends_on "baz" => :build depends_on "baz" => :build
end end
tap = Tap.new("user", "repo")
from_tap = formula("from_tap", tap.path/"Formula/from_tap.rb") do
url "from_tap-1.0"
end
stub_formula_loader from_tap
stub_formula_loader formula("bar") { url "bar-2.0" } stub_formula_loader formula("bar") { url "bar-2.0" }
stub_formula_loader formula("baz") { url "baz-3.0" } stub_formula_loader formula("baz") { url "baz-3.0" }
@ -140,7 +147,10 @@ class TabTests < Homebrew::TestCase
stdlib = :libcxx stdlib = :libcxx
tab = Tab.create(f, compiler, stdlib) tab = Tab.create(f, compiler, stdlib)
runtime_dependencies = [{ "full_name" => "bar", "version" => "2.0" }] runtime_dependencies = [
{ "full_name" => "bar", "version" => "2.0" },
{ "full_name" => "user/repo/from_tap", "version" => "1.0" },
]
assert_equal runtime_dependencies, tab.runtime_dependencies assert_equal runtime_dependencies, tab.runtime_dependencies
assert_equal f.path.to_s, tab.source["path"] assert_equal f.path.to_s, tab.source["path"]

View File

@ -124,7 +124,7 @@ module Homebrew
# Use a stubbed {Formulary::FormulaLoader} to make a given formula be found # Use a stubbed {Formulary::FormulaLoader} to make a given formula be found
# when loading from {Formulary} with `ref`. # when loading from {Formulary} with `ref`.
def stub_formula_loader(formula, ref = formula.name) def stub_formula_loader(formula, ref = formula.full_name)
loader = mock loader = mock
loader.stubs(:get_formula).returns(formula) loader.stubs(:get_formula).returns(formula)
Formulary.stubs(:loader_for).with(ref).returns(loader) Formulary.stubs(:loader_for).with(ref).returns(loader)