summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-eval/test/eval.rb
diff options
context:
space:
mode:
authorMiura Hideki <[email protected]>2014-05-14 21:42:39 +0900
committerMiura Hideki <[email protected]>2014-05-14 21:42:39 +0900
commitf10331cfe6f9e0e06b85dc9ea5c97dde9dd15fa4 (patch)
tree4de1a4a5906190b50765a967a8817a7e7ce23803 /mrbgems/mruby-eval/test/eval.rb
parent27df1a84bc5310bcd32d90b7157a3ad46ef3ac76 (diff)
downloadmruby-f10331cfe6f9e0e06b85dc9ea5c97dde9dd15fa4.tar.gz
mruby-f10331cfe6f9e0e06b85dc9ea5c97dde9dd15fa4.zip
Modify eval for access outer local variable
Diffstat (limited to 'mrbgems/mruby-eval/test/eval.rb')
-rw-r--r--mrbgems/mruby-eval/test/eval.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/mrbgems/mruby-eval/test/eval.rb b/mrbgems/mruby-eval/test/eval.rb
index fe1de2978..29cd3a491 100644
--- a/mrbgems/mruby-eval/test/eval.rb
+++ b/mrbgems/mruby-eval/test/eval.rb
@@ -1,6 +1,23 @@
assert('Kernel.eval') do
assert_equal(10) { Kernel.eval '1 * 10' }
assert_equal('aaa') { Kernel.eval "'a' * 3" }
+ assert_equal(10) {
+ a = 10
+ Kernel.eval "a"
+ }
+ assert_equal(20) {
+ a = 10
+ Kernel.eval "a = 20"
+ a
+ }
+ assert_equal(15) {
+ c = 5
+ lambda {
+ a = 10
+ Kernel.eval "c = a + c"
+ }.call
+ c
+ }
end
assert('eval') do