diff options
Diffstat (limited to 'spec/ruby/core/proc/source_location_spec.rb')
| -rw-r--r-- | spec/ruby/core/proc/source_location_spec.rb | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/spec/ruby/core/proc/source_location_spec.rb b/spec/ruby/core/proc/source_location_spec.rb index f268499b82..d27ad0559e 100644 --- a/spec/ruby/core/proc/source_location_spec.rb +++ b/spec/ruby/core/proc/source_location_spec.rb @@ -10,45 +10,45 @@ describe "Proc#source_location" do end it "returns an Array" do - @proc.source_location.should be_an_instance_of(Array) - @proc_new.source_location.should be_an_instance_of(Array) - @lambda.source_location.should be_an_instance_of(Array) - @method.source_location.should be_an_instance_of(Array) + @proc.source_location.should.instance_of?(Array) + @proc_new.source_location.should.instance_of?(Array) + @lambda.source_location.should.instance_of?(Array) + @method.source_location.should.instance_of?(Array) end it "sets the first value to the path of the file in which the proc was defined" do file = @proc.source_location.first - file.should be_an_instance_of(String) - file.should == File.realpath('../fixtures/source_location.rb', __FILE__) + file.should.instance_of?(String) + file.should == File.realpath('fixtures/source_location.rb', __dir__) file = @proc_new.source_location.first - file.should be_an_instance_of(String) - file.should == File.realpath('../fixtures/source_location.rb', __FILE__) + file.should.instance_of?(String) + file.should == File.realpath('fixtures/source_location.rb', __dir__) file = @lambda.source_location.first - file.should be_an_instance_of(String) - file.should == File.realpath('../fixtures/source_location.rb', __FILE__) + file.should.instance_of?(String) + file.should == File.realpath('fixtures/source_location.rb', __dir__) file = @method.source_location.first - file.should be_an_instance_of(String) - file.should == File.realpath('../fixtures/source_location.rb', __FILE__) + file.should.instance_of?(String) + file.should == File.realpath('fixtures/source_location.rb', __dir__) end it "sets the last value to an Integer representing the line on which the proc was defined" do line = @proc.source_location.last - line.should be_an_instance_of(Integer) + line.should.instance_of?(Integer) line.should == 4 line = @proc_new.source_location.last - line.should be_an_instance_of(Integer) + line.should.instance_of?(Integer) line.should == 12 line = @lambda.source_location.last - line.should be_an_instance_of(Integer) + line.should.instance_of?(Integer) line.should == 8 line = @method.source_location.last - line.should be_an_instance_of(Integer) + line.should.instance_of?(Integer) line.should == 15 end @@ -83,4 +83,9 @@ describe "Proc#source_location" do proc.source_location.should == nil end + + it "works for eval with a given line" do + proc = eval('-> {}', nil, "foo", 100) + proc.source_location.should == ["foo", 100] + end end |
