diff options
Diffstat (limited to 'Library/Homebrew/test')
| -rw-r--r-- | Library/Homebrew/test/test_build_environment.rb | 14 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_object.rb | 20 |
2 files changed, 34 insertions, 0 deletions
diff --git a/Library/Homebrew/test/test_build_environment.rb b/Library/Homebrew/test/test_build_environment.rb index d8a227f51..6710662b5 100644 --- a/Library/Homebrew/test/test_build_environment.rb +++ b/Library/Homebrew/test/test_build_environment.rb @@ -31,6 +31,20 @@ class BuildEnvironmentTests < Test::Unit::TestCase dump = Marshal.dump(@env) assert Marshal.load(dump).userpaths? end + + def test_env_block + foo = mock("foo") + @env << Proc.new { foo.some_message } + foo.expects(:some_message) + @env.modify_build_environment + end + + def test_env_block_with_argument + foo = mock("foo") + @env << Proc.new { |x| x.some_message } + foo.expects(:some_message) + @env.modify_build_environment(foo) + end end class BuildEnvironmentDSLTests < Test::Unit::TestCase diff --git a/Library/Homebrew/test/test_object.rb b/Library/Homebrew/test/test_object.rb new file mode 100644 index 000000000..debdd6c42 --- /dev/null +++ b/Library/Homebrew/test/test_object.rb @@ -0,0 +1,20 @@ +require 'testing_env' +require 'extend/object' + +class InstanceExecTests < Test::Unit::TestCase + def test_evaluates_in_context_of_receiver + assert_equal 1, [1].instance_exec { first } + end + + def test_passes_arguments_to_block + assert_equal 2, [1].instance_exec(1) { |x| first + x } + end + + def test_does_not_persist_temporary_singleton_method + obj = Object.new + before = obj.methods + obj.instance_exec { methods } + after = obj.methods + assert_equal before, after + end +end |
