[PRISM] Add eval tests
This commit is contained in:
parent
c2af974e67
commit
edb755c84b
@ -2643,6 +2643,43 @@ end
|
||||
# Miscellaneous #
|
||||
############################################################################
|
||||
|
||||
def test_eval
|
||||
assert_prism_eval("eval('1 + 1')", raw: true)
|
||||
assert_prism_eval("a = 1; eval('a + 1')", raw: true)
|
||||
|
||||
assert_prism_eval(<<~CODE, raw: true)
|
||||
def prism_eval_splat(**bar)
|
||||
eval("bar")
|
||||
end
|
||||
prism_eval_splat(bar: 10)
|
||||
CODE
|
||||
|
||||
assert_prism_eval(<<~CODE, raw: true)
|
||||
def prism_eval_keywords(baz:)
|
||||
eval("baz")
|
||||
end
|
||||
prism_eval_keywords(baz: 10)
|
||||
CODE
|
||||
|
||||
assert_prism_eval(<<~CODE, raw: true)
|
||||
[1].each do |a|
|
||||
[2].each do |b|
|
||||
c = 3
|
||||
eval("a + b + c")
|
||||
end
|
||||
end
|
||||
CODE
|
||||
|
||||
assert_prism_eval(<<~CODE, raw: true)
|
||||
def prism_eval_binding(b)
|
||||
eval("bar", b)
|
||||
end
|
||||
|
||||
bar = :ok
|
||||
prism_eval_binding(binding)
|
||||
CODE
|
||||
end
|
||||
|
||||
def test_ScopeNode
|
||||
assert_separately(%w[], <<~'RUBY')
|
||||
def compare_eval(source)
|
||||
|
Loading…
x
Reference in New Issue
Block a user