summaryrefslogtreecommitdiff
path: root/spec/ruby/core/module/attr_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/core/module/attr_spec.rb')
-rw-r--r--spec/ruby/core/module/attr_spec.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/ruby/core/module/attr_spec.rb b/spec/ruby/core/module/attr_spec.rb
index 8b91e77658..060d072f27 100644
--- a/spec/ruby/core/module/attr_spec.rb
+++ b/spec/ruby/core/module/attr_spec.rb
@@ -145,4 +145,24 @@ describe "Module#attr" do
it "is a public method" do
Module.should have_public_instance_method(:attr, false)
end
+
+ ruby_version_is ""..."3.0" do
+ it "returns nil" do
+ Class.new do
+ (attr :foo, 'bar').should == nil
+ (attr :baz, false).should == nil
+ (attr :qux, true).should == nil
+ end
+ end
+ end
+
+ ruby_version_is "3.0" do
+ it "returns an array of defined methods names as symbols" do
+ Class.new do
+ (attr :foo, 'bar').should == [:foo, :bar]
+ (attr :baz, false).should == [:baz]
+ (attr :qux, true).should == [:qux, :qux=]
+ end
+ end
+ end
end