1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

test_parse.rb: eval locations

* test/ruby/test_parse.rb: set eval locations.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2012-09-15 09:26:21 +00:00
parent bcd7b81ea6
commit 356c085709

View file

@ -12,7 +12,7 @@ class TestParse < Test::Unit::TestCase
end end
def test_else_without_rescue def test_else_without_rescue
x = eval <<-END x = eval <<-END, nil, __FILE__, __LINE__+1
begin begin
else else
42 42
@ -23,7 +23,7 @@ class TestParse < Test::Unit::TestCase
def test_alias_backref def test_alias_backref
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
alias $foo $1 alias $foo $1
END END
end end
@ -36,7 +36,7 @@ class TestParse < Test::Unit::TestCase
a = false a = false
b = c = d = true b = c = d = true
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a &&= t.foo 42 a &&= t.foo 42
b &&= t.foo 42 b &&= t.foo 42
c &&= t.foo nil c &&= t.foo nil
@ -51,7 +51,7 @@ class TestParse < Test::Unit::TestCase
a = [nil, nil, true, true] a = [nil, nil, true, true]
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a[0] ||= t.foo 42 a[0] ||= t.foo 42
a[1] &&= t.foo 42 a[1] &&= t.foo 42
a[2] ||= t.foo 42 a[2] ||= t.foo 42
@ -67,7 +67,7 @@ class TestParse < Test::Unit::TestCase
o.foo = o.Foo = o::baz = nil o.foo = o.Foo = o::baz = nil
o.bar = o.Bar = o::qux = 1 o.bar = o.Bar = o::qux = 1
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
o.foo ||= t.foo 42 o.foo ||= t.foo 42
o.bar &&= t.foo 42 o.bar &&= t.foo 42
o.Foo ||= t.foo 42 o.Foo ||= t.foo 42
@ -81,7 +81,7 @@ class TestParse < Test::Unit::TestCase
assert_equal([42, 42], [o::baz, o::qux]) assert_equal([42, 42], [o::baz, o::qux])
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
$1 ||= t.foo 42 $1 ||= t.foo 42
END END
end end
@ -90,7 +90,7 @@ class TestParse < Test::Unit::TestCase
a = b = nil a = b = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a = t.bar "foo" do a = t.bar "foo" do
"bar" "bar"
end.gsub "ob", "OB" end.gsub "ob", "OB"
@ -104,7 +104,7 @@ class TestParse < Test::Unit::TestCase
a = nil a = nil
assert_nothing_raised do assert_nothing_raised do
t.instance_eval <<-END t.instance_eval <<-END, __FILE__, __LINE__+1
a = bar "foo" do "bar" end a = bar "foo" do "bar" end
END END
end end
@ -112,7 +112,7 @@ class TestParse < Test::Unit::TestCase
a = nil a = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a = t::bar "foo" do "bar" end a = t::bar "foo" do "bar" end
END END
end end
@ -136,7 +136,7 @@ class TestParse < Test::Unit::TestCase
end end
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
c::foo, c::bar = 1, 2 c::foo, c::bar = 1, 2
c.Foo, c.Bar = 1, 2 c.Foo, c.Bar = 1, 2
c::FOO, c::BAR = 1, 2 c::FOO, c::BAR = 1, 2
@ -149,7 +149,7 @@ class TestParse < Test::Unit::TestCase
def test_dynamic_constant_assignment def test_dynamic_constant_assignment
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
Object.new.instance_eval <<-END Object.new.instance_eval <<-END, __FILE__, __LINE__+1
def foo def foo
self::FOO, self::BAR = 1, 2 self::FOO, self::BAR = 1, 2
::FOO, ::BAR = 1, 2 ::FOO, ::BAR = 1, 2
@ -158,13 +158,13 @@ class TestParse < Test::Unit::TestCase
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
$1, $2 = 1, 2 $1, $2 = 1, 2
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
Object.new.instance_eval <<-END Object.new.instance_eval <<-END, __FILE__, __LINE__+1
def foo def foo
::FOO = 1 ::FOO = 1
end end
@ -173,7 +173,7 @@ class TestParse < Test::Unit::TestCase
c = Class.new c = Class.new
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
c::FOO &= 1 c::FOO &= 1
::FOO &= 1 ::FOO &= 1
END END
@ -181,7 +181,7 @@ class TestParse < Test::Unit::TestCase
c = Class.new c = Class.new
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
$1 &= 1 $1 &= 1
END END
end end
@ -189,13 +189,13 @@ class TestParse < Test::Unit::TestCase
def test_class_module def test_class_module
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
class foo; end class foo; end
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo def foo
class Foo; end class Foo; end
module Bar; end module Bar; end
@ -204,7 +204,7 @@ class TestParse < Test::Unit::TestCase
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
class Foo Bar; end class Foo Bar; end
END END
end end
@ -217,7 +217,7 @@ class TestParse < Test::Unit::TestCase
a = nil a = nil
assert_nothing_raised do assert_nothing_raised do
o.instance_eval <<-END o.instance_eval <<-END, __FILE__, __LINE__+1
undef >, / undef >, /
END END
end end
@ -231,7 +231,7 @@ class TestParse < Test::Unit::TestCase
o.foo = o.Foo = o::baz = nil o.foo = o.Foo = o::baz = nil
o.bar = o.Bar = o::qux = 1 o.bar = o.Bar = o::qux = 1
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
o.foo ||= 42 o.foo ||= 42
o.bar &&= 42 o.bar &&= 42
o.Foo ||= 42 o.Foo ||= 42
@ -246,7 +246,7 @@ class TestParse < Test::Unit::TestCase
a = nil a = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a = -2.0 ** 2 a = -2.0 ** 2
END END
end end
@ -259,7 +259,7 @@ class TestParse < Test::Unit::TestCase
a = nil a = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
o.foo 1 do|; a| a = 42 end o.foo 1 do|; a| a = 42 end
END END
end end
@ -268,25 +268,25 @@ class TestParse < Test::Unit::TestCase
def test_bad_arg def test_bad_arg
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo(FOO); end def foo(FOO); end
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo(@foo); end def foo(@foo); end
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo($foo); end def foo($foo); end
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo(@@foo); end def foo(@@foo); end
END END
end end
@ -295,7 +295,7 @@ class TestParse < Test::Unit::TestCase
def o.foo(*r); yield(*r); end def o.foo(*r); yield(*r); end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
o.foo 1 {|; @a| @a = 42 } o.foo 1 {|; @a| @a = 42 }
END END
end end
@ -304,7 +304,7 @@ class TestParse < Test::Unit::TestCase
def test_do_lambda def test_do_lambda
a = b = nil a = b = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a = -> do a = -> do
b = 42 b = 42
end end
@ -320,7 +320,7 @@ class TestParse < Test::Unit::TestCase
a = b = nil a = b = nil
assert_nothing_raised do assert_nothing_raised do
o.instance_eval <<-END o.instance_eval <<-END, __FILE__, __LINE__+1
a = foo 1 do 42 end.to_s a = foo 1 do 42 end.to_s
b = foo 1 do 42 end::to_s b = foo 1 do 42 end::to_s
END END
@ -332,7 +332,7 @@ class TestParse < Test::Unit::TestCase
def test_call_method def test_call_method
a = b = nil a = b = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a = proc {|x| x + "bar" }.("foo") a = proc {|x| x + "bar" }.("foo")
b = proc {|x| x + "bar" }::("foo") b = proc {|x| x + "bar" }::("foo")
END END
@ -366,7 +366,7 @@ class TestParse < Test::Unit::TestCase
o = Object.new o = Object.new
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def o.foo(a=42,*r,z,&b); b.call(r.inject(a*1000+z*100, :+)); end def o.foo(a=42,*r,z,&b); b.call(r.inject(a*1000+z*100, :+)); end
END END
end end
@ -377,7 +377,7 @@ class TestParse < Test::Unit::TestCase
assert_raise(ArgumentError) { o.foo() } assert_raise(ArgumentError) { o.foo() }
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def o.foo(a=42,z,&b); b.call(a*1000+z*100); end def o.foo(a=42,z,&b); b.call(a*1000+z*100); end
END END
end end
@ -386,7 +386,7 @@ class TestParse < Test::Unit::TestCase
assert_raise(ArgumentError) { o.foo() } assert_raise(ArgumentError) { o.foo() }
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def o.foo(*r,z,&b); b.call(r.inject(z*100, :+)); end def o.foo(*r,z,&b); b.call(r.inject(z*100, :+)); end
END END
end end
@ -398,19 +398,19 @@ class TestParse < Test::Unit::TestCase
def test_duplicate_argument def test_duplicate_argument
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
1.times {|&b?| } 1.times {|&b?| }
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
1.times {|a, a|} 1.times {|a, a|}
END END
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo(a, a); end def foo(a, a); end
END END
end end
@ -418,7 +418,7 @@ class TestParse < Test::Unit::TestCase
def test_define_singleton_error def test_define_singleton_error
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def ("foo").foo; end def ("foo").foo; end
END END
end end
@ -428,17 +428,17 @@ class TestParse < Test::Unit::TestCase
t = Object.new t = Object.new
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def t.`(x); "foo" + x + "bar"; end def t.`(x); "foo" + x + "bar"; end
END END
end end
a = b = nil a = b = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
a = t.` "zzz" a = t.` "zzz"
1.times {|;z| t.` ("zzz") } 1.times {|;z| t.` ("zzz") }
END END
t.instance_eval <<-END t.instance_eval <<-END, __FILE__, __LINE__+1
b = `zzz` b = `zzz`
END END
end end
@ -509,7 +509,7 @@ class TestParse < Test::Unit::TestCase
def test_parse_string def test_parse_string
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
/ /
END END
end end
@ -568,7 +568,7 @@ FOO
def test_magic_comment def test_magic_comment
x = nil x = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
# coding = utf-8 # coding = utf-8
x = __ENCODING__ x = __ENCODING__
END END
@ -576,7 +576,7 @@ x = __ENCODING__
assert_equal(Encoding.find("UTF-8"), x) assert_equal(Encoding.find("UTF-8"), x)
assert_raise(ArgumentError) do assert_raise(ArgumentError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
# coding = foobarbazquxquux_dummy_enconding # coding = foobarbazquxquux_dummy_enconding
x = __ENCODING__ x = __ENCODING__
END END
@ -595,7 +595,7 @@ x = __ENCODING__
def test_dot_in_next_line def test_dot_in_next_line
x = nil x = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
x = 1 x = 1
.to_s .to_s
END END
@ -611,7 +611,7 @@ x = __ENCODING__
def test_embedded_rd def test_embedded_rd
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
=begin =begin
END END
end end
@ -675,7 +675,7 @@ x = __ENCODING__
eval %q(__ENCODING__ = 1) eval %q(__ENCODING__ = 1)
end end
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
def foo def foo
FOO = 1 FOO = 1
end end
@ -685,7 +685,7 @@ x = __ENCODING__
def test_block_dup def test_block_dup
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
foo(&proc{}) {} foo(&proc{}) {}
END END
end end
@ -693,7 +693,7 @@ x = __ENCODING__
def test_set_backref def test_set_backref
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
$& = 1 $& = 1
END END
end end
@ -706,7 +706,7 @@ x = __ENCODING__
end end
r = nil r = nil
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
o[&proc{|x| r = x }] = 1 o[&proc{|x| r = x }] = 1
END END
end end
@ -738,7 +738,7 @@ x = __ENCODING__
o = Object.new o = Object.new
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
x = def o.foo; end x = def o.foo; end
END END
end end
@ -748,13 +748,13 @@ x = __ENCODING__
def test_assign_in_conditional def test_assign_in_conditional
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
(x, y = 1, 2) ? 1 : 2 (x, y = 1, 2) ? 1 : 2
END END
end end
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
if @x = true if @x = true
1 1
else else
@ -766,33 +766,33 @@ x = __ENCODING__
def test_literal_in_conditional def test_literal_in_conditional
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
"foo" ? 1 : 2 "foo" ? 1 : 2
END END
end end
assert_nothing_raised do assert_nothing_raised do
x = "bar" x = "bar"
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
/foo#{x}baz/ ? 1 : 2 /foo#{x}baz/ ? 1 : 2
END END
end end
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
(true..false) ? 1 : 2 (true..false) ? 1 : 2
END END
end end
assert_nothing_raised do assert_nothing_raised do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
("foo".."bar") ? 1 : 2 ("foo".."bar") ? 1 : 2
END END
end end
assert_nothing_raised do assert_nothing_raised do
x = "bar" x = "bar"
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
:"foo#{"x"}baz" ? 1 : 2 :"foo#{"x"}baz" ? 1 : 2
END END
end end
@ -800,7 +800,7 @@ x = __ENCODING__
def test_no_blockarg def test_no_blockarg
assert_raise(SyntaxError) do assert_raise(SyntaxError) do
eval <<-END eval <<-END, nil, __FILE__, __LINE__+1
yield(&:+) yield(&:+)
END END
end end