зеркало из https://github.com/github/ruby.git
Suppress warnings against locations in eval
This commit is contained in:
Родитель
cee394eb22
Коммит
ec0d742dd7
|
@ -26,26 +26,26 @@ describe "Binding#eval" do
|
|||
it "inherits __LINE__ from the enclosing scope" do
|
||||
obj = BindingSpecs::Demo.new(1)
|
||||
bind = obj.get_binding
|
||||
bind.eval("__LINE__").should == obj.get_line_of_binding
|
||||
suppress_warning {bind.eval("__LINE__")}.should == obj.get_line_of_binding
|
||||
end
|
||||
|
||||
it "preserves __LINE__ across multiple calls to eval" do
|
||||
obj = BindingSpecs::Demo.new(1)
|
||||
bind = obj.get_binding
|
||||
bind.eval("__LINE__").should == obj.get_line_of_binding
|
||||
bind.eval("__LINE__").should == obj.get_line_of_binding
|
||||
suppress_warning {bind.eval("__LINE__")}.should == obj.get_line_of_binding
|
||||
suppress_warning {bind.eval("__LINE__")}.should == obj.get_line_of_binding
|
||||
end
|
||||
|
||||
it "increments __LINE__ on each line of a multiline eval" do
|
||||
obj = BindingSpecs::Demo.new(1)
|
||||
bind = obj.get_binding
|
||||
bind.eval("#foo\n__LINE__").should == obj.get_line_of_binding + 1
|
||||
suppress_warning {bind.eval("#foo\n__LINE__")}.should == obj.get_line_of_binding + 1
|
||||
end
|
||||
|
||||
it "inherits __LINE__ from the enclosing scope even if the Binding is created with #send" do
|
||||
obj = BindingSpecs::Demo.new(1)
|
||||
bind, line = obj.get_binding_with_send_and_line
|
||||
bind.eval("__LINE__").should == line
|
||||
suppress_warning {bind.eval("__LINE__")}.should == line
|
||||
end
|
||||
|
||||
it "starts with a __LINE__ of 1 if a filename is passed" do
|
||||
|
@ -63,7 +63,7 @@ describe "Binding#eval" do
|
|||
it "inherits __FILE__ from the enclosing scope" do
|
||||
obj = BindingSpecs::Demo.new(1)
|
||||
bind = obj.get_binding
|
||||
bind.eval("__FILE__").should == obj.get_file_of_binding
|
||||
suppress_warning {bind.eval("__FILE__")}.should == obj.get_file_of_binding
|
||||
end
|
||||
|
||||
it "uses the __FILE__ that is passed in" do
|
||||
|
@ -77,7 +77,7 @@ describe "Binding#eval" do
|
|||
bind = obj.get_binding
|
||||
|
||||
bind.eval("__FILE__", "test.rb").should == "test.rb"
|
||||
bind.eval("__FILE__").should_not == "test.rb"
|
||||
suppress_warning {bind.eval("__FILE__")}.should_not == "test.rb"
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -161,11 +161,11 @@ describe "Kernel#eval" do
|
|||
|
||||
it "uses the filename of the binding if none is provided" do
|
||||
eval("__FILE__").should == "(eval)"
|
||||
eval("__FILE__", binding).should == __FILE__
|
||||
suppress_warning {eval("__FILE__", binding)}.should == __FILE__
|
||||
eval("__FILE__", binding, "success").should == "success"
|
||||
eval("eval '__FILE__', binding").should == "(eval)"
|
||||
eval("eval '__FILE__', binding", binding).should == __FILE__
|
||||
eval("eval '__FILE__', binding", binding, 'success').should == 'success'
|
||||
suppress_warning {eval("eval '__FILE__', binding")}.should == "(eval)"
|
||||
suppress_warning {eval("eval '__FILE__', binding", binding)}.should == __FILE__
|
||||
suppress_warning {eval("eval '__FILE__', binding", binding, 'success')}.should == 'success'
|
||||
end
|
||||
|
||||
# Found via Rubinius bug github:#149
|
||||
|
|
Загрузка…
Ссылка в новой задаче