diff options
| author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-12-25 05:40:41 +0000 |
|---|---|---|
| committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-12-25 05:40:41 +0000 |
| commit | 99cda3f6b54de78753fc7eec28eba8eb6199ab60 (patch) | |
| tree | 83e40f64b03beca781ec558141fd06c3021affdc /test/ruby | |
| parent | bd7bce0bca656546d97ecf7bbbe9ad101822eb7b (diff) | |
| download | ruby-99cda3f6b54de78753fc7eec28eba8eb6199ab60.tar.gz ruby-99cda3f6b54de78753fc7eec28eba8eb6199ab60.tar.xz ruby-99cda3f6b54de78753fc7eec28eba8eb6199ab60.zip | |
* test/ruby/test_eval.rb: add new test.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
| -rw-r--r-- | test/ruby/test_eval.rb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/ruby/test_eval.rb b/test/ruby/test_eval.rb index 23d34a5f8..2f4b0bfbb 100644 --- a/test/ruby/test_eval.rb +++ b/test/ruby/test_eval.rb @@ -1,4 +1,5 @@ require 'test/unit' +require_relative 'envutil' class TestEval < Test::Unit::TestCase @@ -7,6 +8,15 @@ class TestEval < Test::Unit::TestCase $gvar__eval = 14 Const = 15 + def ruby(*args) + args = ['-e', '$>.write($<.read)'] if args.empty? + ruby = EnvUtil.rubybin + f = IO.popen([ruby] + args, 'r+') + yield(f) + ensure + f.close unless !f || f.closed? + end + def test_eval_basic assert_equal nil, eval("nil") assert_equal true, eval("true") @@ -391,4 +401,11 @@ class TestEval < Test::Unit::TestCase end.join end end + + def test_eval_with_toplevel_binding # [ruby-dev:37142] + ruby("-e", "x = 0; eval('p x', TOPLEVEL_BINDING)") do |f| + f.close_write + assert_equal("0", f.read.chomp) + end + end end |
