requirements: enable userpaths by default during evaluation
This commit is contained in:
parent
aed70e50e8
commit
b9e5f1229b
@ -224,7 +224,6 @@ class Requirement
|
|||||||
|
|
||||||
def satisfy(options={}, &block)
|
def satisfy(options={}, &block)
|
||||||
if block_given?
|
if block_given?
|
||||||
options[:userpaths] = true if env.userpaths?
|
|
||||||
@satisfied ||= Requirement::Satisfier.new(options, &block)
|
@satisfied ||= Requirement::Satisfier.new(options, &block)
|
||||||
else
|
else
|
||||||
@satisfied ||= options
|
@satisfied ||= options
|
||||||
@ -243,7 +242,7 @@ class Requirement
|
|||||||
if @options[:build_env]
|
if @options[:build_env]
|
||||||
require 'superenv'
|
require 'superenv'
|
||||||
ENV.with_build_environment do
|
ENV.with_build_environment do
|
||||||
ENV.userpaths! if @options[:userpaths]
|
ENV.userpaths!
|
||||||
yield @proc
|
yield @proc
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|||||||
@ -45,29 +45,33 @@ class RequirementTests < Test::Unit::TestCase
|
|||||||
assert !req.satisfied?
|
assert !req.satisfied?
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_satisfy_with_userpaths_from_env
|
|
||||||
ENV.expects(:with_build_environment).yields.returns(true)
|
|
||||||
ENV.expects(:userpaths!)
|
|
||||||
req = Class.new(Requirement) do
|
|
||||||
env :userpaths
|
|
||||||
satisfy(:build_env => true) { true }
|
|
||||||
end.new
|
|
||||||
assert req.satisfied?
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_satisfy_with_userpaths_from_options
|
|
||||||
ENV.expects(:with_build_environment).yields.returns(true)
|
|
||||||
ENV.expects(:userpaths!)
|
|
||||||
req = Class.new(Requirement) do
|
|
||||||
satisfy(:build_env => true, :userpaths => true) { true }
|
|
||||||
end.new
|
|
||||||
assert req.satisfied?
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_satisfy_with_boolean
|
def test_satisfy_with_boolean
|
||||||
req = Class.new(Requirement) do
|
req = Class.new(Requirement) do
|
||||||
satisfy true
|
satisfy true
|
||||||
end.new
|
end.new
|
||||||
assert req.satisfied?
|
assert req.satisfied?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_satisfy_sets_up_build_env_by_default
|
||||||
|
req = Class.new(Requirement) do
|
||||||
|
env :userpaths
|
||||||
|
satisfy { true }
|
||||||
|
end.new
|
||||||
|
|
||||||
|
ENV.expects(:with_build_environment).yields.returns(true)
|
||||||
|
ENV.expects(:userpaths!)
|
||||||
|
|
||||||
|
assert req.satisfied?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_satisfy_build_env_can_be_disabled
|
||||||
|
req = Class.new(Requirement) do
|
||||||
|
satisfy(:build_env => false) { true }
|
||||||
|
end.new
|
||||||
|
|
||||||
|
ENV.expects(:with_build_environment).never
|
||||||
|
ENV.expects(:userpaths!).never
|
||||||
|
|
||||||
|
assert req.satisfied?
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user