diff options
Diffstat (limited to 'spec/ruby/core/method')
-rw-r--r-- | spec/ruby/core/method/private_spec.rb | 11 | ||||
-rw-r--r-- | spec/ruby/core/method/protected_spec.rb | 11 | ||||
-rw-r--r-- | spec/ruby/core/method/public_spec.rb | 11 | ||||
-rw-r--r-- | spec/ruby/core/method/source_location_spec.rb | 7 |
4 files changed, 34 insertions, 6 deletions
diff --git a/spec/ruby/core/method/private_spec.rb b/spec/ruby/core/method/private_spec.rb index 230a4e9e81..fd550036a3 100644 --- a/spec/ruby/core/method/private_spec.rb +++ b/spec/ruby/core/method/private_spec.rb @@ -1,8 +1,8 @@ require_relative '../../spec_helper' require_relative 'fixtures/classes' -ruby_version_is "3.1"..."3.2" do - describe "Method#private?" do +describe "Method#private?" do + ruby_version_is "3.1"..."3.2" do it "returns false when the method is public" do obj = MethodSpecs::Methods.new obj.method(:my_public_method).private?.should == false @@ -18,4 +18,11 @@ ruby_version_is "3.1"..."3.2" do obj.method(:my_private_method).private?.should == true end end + + ruby_version_is "3.2" do + it "has been removed" do + obj = MethodSpecs::Methods.new + obj.method(:my_private_method).should_not.respond_to?(:private?) + end + end end diff --git a/spec/ruby/core/method/protected_spec.rb b/spec/ruby/core/method/protected_spec.rb index 6ee85f7738..8423e8c64c 100644 --- a/spec/ruby/core/method/protected_spec.rb +++ b/spec/ruby/core/method/protected_spec.rb @@ -1,8 +1,8 @@ require_relative '../../spec_helper' require_relative 'fixtures/classes' -ruby_version_is "3.1"..."3.2" do - describe "Method#protected?" do +describe "Method#protected?" do + ruby_version_is "3.1"..."3.2" do it "returns false when the method is public" do obj = MethodSpecs::Methods.new obj.method(:my_public_method).protected?.should == false @@ -18,4 +18,11 @@ ruby_version_is "3.1"..."3.2" do obj.method(:my_private_method).protected?.should == false end end + + ruby_version_is "3.2" do + it "has been removed" do + obj = MethodSpecs::Methods.new + obj.method(:my_protected_method).should_not.respond_to?(:protected?) + end + end end diff --git a/spec/ruby/core/method/public_spec.rb b/spec/ruby/core/method/public_spec.rb index 3988468551..20d0081a27 100644 --- a/spec/ruby/core/method/public_spec.rb +++ b/spec/ruby/core/method/public_spec.rb @@ -1,8 +1,8 @@ require_relative '../../spec_helper' require_relative 'fixtures/classes' -ruby_version_is "3.1"..."3.2" do - describe "Method#public?" do +describe "Method#public?" do + ruby_version_is "3.1"..."3.2" do it "returns true when the method is public" do obj = MethodSpecs::Methods.new obj.method(:my_public_method).public?.should == true @@ -18,4 +18,11 @@ ruby_version_is "3.1"..."3.2" do obj.method(:my_private_method).public?.should == false end end + + ruby_version_is "3.2" do + it "has been removed" do + obj = MethodSpecs::Methods.new + obj.method(:my_public_method).should_not.respond_to?(:public?) + end + end end diff --git a/spec/ruby/core/method/source_location_spec.rb b/spec/ruby/core/method/source_location_spec.rb index 1f476aaa9b..4cfb21c5d0 100644 --- a/spec/ruby/core/method/source_location_spec.rb +++ b/spec/ruby/core/method/source_location_spec.rb @@ -104,6 +104,13 @@ describe "Method#source_location" do end end + it "works for eval with a given line" do + c = Class.new do + eval('def self.m; end', nil, "foo", 100) + 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 |