summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-eval/test
diff options
context:
space:
mode:
authortake_cheeze <[email protected]>2014-07-15 22:33:14 +0900
committertake_cheeze <[email protected]>2014-07-15 22:33:14 +0900
commitdd34decdfcbea92f04b03c7d075e187101b3c3d6 (patch)
tree9e286f869b69444589f495d2bd32e66c62b8f7ea /mrbgems/mruby-eval/test
parentd5dd3e94723fc7754aa5d478e0947479569c25dc (diff)
downloadmruby-dd34decdfcbea92f04b03c7d075e187101b3c3d6.tar.gz
mruby-dd34decdfcbea92f04b03c7d075e187101b3c3d6.zip
Implement string compiling `instance_eval` method.
Diffstat (limited to 'mrbgems/mruby-eval/test')
-rw-r--r--mrbgems/mruby-eval/test/eval.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/mrbgems/mruby-eval/test/eval.rb b/mrbgems/mruby-eval/test/eval.rb
index eb51f396a..87c64732d 100644
--- a/mrbgems/mruby-eval/test/eval.rb
+++ b/mrbgems/mruby-eval/test/eval.rb
@@ -50,3 +50,13 @@ assert 'eval syntax error' do
eval 'p "test'
end
end
+
+assert('String instance_eval') do
+ obj = Object.new
+ obj.instance_variable_set :@test, 'test'
+ assert_raise(ArgumentError) { obj.instance_eval(0) { } }
+ assert_raise(ArgumentError) { obj.instance_eval('0', 'test', 0, 'test') }
+ assert_equal(['test.rb', 10]) { obj.instance_eval('[__FILE__, __LINE__]', 'test.rb', 10)}
+ assert_equal('test') { obj.instance_eval('@test') }
+ assert_equal('test') { obj.instance_eval { @test } }
+end