aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test
diff options
context:
space:
mode:
authorJack Nagel2013-01-19 20:45:57 -0600
committerJack Nagel2013-01-21 17:24:10 -0600
commitcfdc7efef925411efad291be5c6739979682b3b3 (patch)
treebe5bea9d765f9b841e5268fd801358ec33af13f0 /Library/Homebrew/test
parent3270fd2cd94e6ca637bbae5f2acfc9c1824d76e2 (diff)
downloadhomebrew-cfdc7efef925411efad291be5c6739979682b3b3.tar.bz2
Allow env DSL to take a block
In addition to env :userpaths env :std requirements can now do env do append 'PATH', '/some/path/to/bin' # and more end
Diffstat (limited to 'Library/Homebrew/test')
-rw-r--r--Library/Homebrew/test/test_build_environment.rb33
-rw-r--r--Library/Homebrew/test/test_requirement.rb11
2 files changed, 33 insertions, 11 deletions
diff --git a/Library/Homebrew/test/test_build_environment.rb b/Library/Homebrew/test/test_build_environment.rb
index fde3f3c70..d8a227f51 100644
--- a/Library/Homebrew/test/test_build_environment.rb
+++ b/Library/Homebrew/test/test_build_environment.rb
@@ -19,4 +19,37 @@ class BuildEnvironmentTests < Test::Unit::TestCase
@env << :userpaths
assert @env.userpaths?
end
+
+ def test_modify_build_environment
+ @env << Proc.new { 1 }
+ assert_equal 1, @env.modify_build_environment
+ end
+
+ def test_marshal
+ @env << :userpaths
+ @env << Proc.new { 1 }
+ dump = Marshal.dump(@env)
+ assert Marshal.load(dump).userpaths?
+ end
+end
+
+class BuildEnvironmentDSLTests < Test::Unit::TestCase
+ def make_instance(&block)
+ Class.new do
+ extend BuildEnvironmentDSL
+ def env; self.class.env end
+ class_eval(&block)
+ end.new
+ end
+
+ def test_env_single_argument
+ obj = make_instance { env :userpaths }
+ assert obj.env.userpaths?
+ end
+
+ def test_env_multiple_arguments
+ obj = make_instance { env :userpaths, :std }
+ assert obj.env.userpaths?
+ assert obj.env.std?
+ end
end
diff --git a/Library/Homebrew/test/test_requirement.rb b/Library/Homebrew/test/test_requirement.rb
index 7bfb75ff3..28e2afae7 100644
--- a/Library/Homebrew/test/test_requirement.rb
+++ b/Library/Homebrew/test/test_requirement.rb
@@ -26,17 +26,6 @@ class RequirementTests < Test::Unit::TestCase
assert_equal [:build, "bar"], dep.tags
end
- def test_dsl_env_single_argument
- req = Class.new(Requirement) { env :userpaths }.new
- assert req.env.userpaths?
- end
-
- def test_dsl_env_multiple_arguments
- req = Class.new(Requirement) { env :userpaths, :std }.new
- assert req.env.userpaths?
- assert req.env.std?
- end
-
def test_dsl_fatal
req = Class.new(Requirement) { fatal true }.new
assert req.fatal?