diff options
Diffstat (limited to 'spec/ruby/core/method/source_location_spec.rb')
| -rw-r--r-- | spec/ruby/core/method/source_location_spec.rb | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/spec/ruby/core/method/source_location_spec.rb b/spec/ruby/core/method/source_location_spec.rb index 23d956ebec..22fcb98c74 100644 --- a/spec/ruby/core/method/source_location_spec.rb +++ b/spec/ruby/core/method/source_location_spec.rb @@ -7,27 +7,27 @@ describe "Method#source_location" do end it "returns an Array" do - @method.source_location.should be_an_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 method was defined" do - file = @method.source_location[0] - file.should be_an_instance_of(String) + file = @method.source_location.first + file.should.instance_of?(String) file.should == File.realpath('fixtures/classes.rb', __dir__) end it "sets the last value to an Integer representing the line on which the method was defined" do - line = @method.source_location[1] - line.should be_an_instance_of(Integer) + line = @method.source_location.last + line.should.instance_of?(Integer) line.should == 5 end it "returns the last place the method was defined" do - MethodSpecs::SourceLocation.method(:redefined).source_location[1].should == 13 + MethodSpecs::SourceLocation.method(:redefined).source_location.last.should == 13 end it "returns the location of the original method even if it was aliased" do - MethodSpecs::SourceLocation.new.method(:aka).source_location[1].should == 17 + MethodSpecs::SourceLocation.new.method(:aka).source_location.last.should == 17 end it "works for methods defined with a block" do @@ -92,7 +92,7 @@ describe "Method#source_location" do loc.should == nil else loc[0].should.start_with?('<internal:') - loc[1].should be_kind_of(Integer) + loc[1].should.is_a?(Integer) end loc = method(:tap).source_location @@ -100,7 +100,7 @@ describe "Method#source_location" do loc.should == nil else loc[0].should.start_with?('<internal:') - loc[1].should be_kind_of(Integer) + loc[1].should.is_a?(Integer) end end @@ -108,19 +108,13 @@ describe "Method#source_location" do c = Class.new do eval('def self.m; end', nil, "foo", 100) end - location = c.method(:m).source_location - ruby_version_is(""..."3.5") do - location.should == ["foo", 100] - end - ruby_version_is("3.5") do - location.should == ["foo", 100, 0, 100, 15] - end + c.method(:m).source_location.should == ["foo", 100] end describe "for a Method generated by respond_to_missing?" do it "returns nil" do m = MethodSpecs::Methods.new - m.method(:handled_via_method_missing).source_location.should be_nil + m.method(:handled_via_method_missing).source_location.should == nil end end end |
