diff options
author | Radosław Bułat <radek.bulat@gmail.com> | 2020-12-18 19:11:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-19 03:11:35 +0900 |
commit | 5944c4b3cfbbf8b774a4a76ca71ab9f71c71d1b0 (patch) | |
tree | 20ef7b2904d257f3344fff54517ec2cf717b5960 /spec | |
parent | f6641d73764115c3f6bdf435a381711d894300b6 (diff) |
attr_reader, attr_writer, attr_accessor and attr methods returns array of symbols (#3935)
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
Notes
Notes:
Merged-By: mame <mame@ruby-lang.org>
Diffstat (limited to 'spec')
-rw-r--r-- | spec/ruby/core/module/attr_accessor_spec.rb | 6 | ||||
-rw-r--r-- | spec/ruby/core/module/attr_reader_spec.rb | 6 | ||||
-rw-r--r-- | spec/ruby/core/module/attr_spec.rb | 8 | ||||
-rw-r--r-- | spec/ruby/core/module/attr_writer_spec.rb | 6 |
4 files changed, 26 insertions, 0 deletions
diff --git a/spec/ruby/core/module/attr_accessor_spec.rb b/spec/ruby/core/module/attr_accessor_spec.rb index 6a749341be..c4133d8e4e 100644 --- a/spec/ruby/core/module/attr_accessor_spec.rb +++ b/spec/ruby/core/module/attr_accessor_spec.rb @@ -67,6 +67,12 @@ describe "Module#attr_accessor" do Module.should have_public_instance_method(:attr_accessor, false) end + it "returns an array of defined methods names as symbols" do + Class.new do + (attr_accessor :foo, 'bar').should == [:foo, :foo=, :bar, :bar=] + end + end + describe "on immediates" do before :each do class Fixnum diff --git a/spec/ruby/core/module/attr_reader_spec.rb b/spec/ruby/core/module/attr_reader_spec.rb index 238e3db9ea..0693909123 100644 --- a/spec/ruby/core/module/attr_reader_spec.rb +++ b/spec/ruby/core/module/attr_reader_spec.rb @@ -61,4 +61,10 @@ describe "Module#attr_reader" do it "is a public method" do Module.should have_public_instance_method(:attr_reader, false) end + + it "returns an array of defined methods names as symbols" do + Class.new do + (attr_reader :foo, 'bar').should == [:foo, :bar] + end + end end diff --git a/spec/ruby/core/module/attr_spec.rb b/spec/ruby/core/module/attr_spec.rb index 8b91e77658..8c7d27e1e3 100644 --- a/spec/ruby/core/module/attr_spec.rb +++ b/spec/ruby/core/module/attr_spec.rb @@ -145,4 +145,12 @@ describe "Module#attr" do it "is a public method" do Module.should have_public_instance_method(:attr, false) end + + 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 diff --git a/spec/ruby/core/module/attr_writer_spec.rb b/spec/ruby/core/module/attr_writer_spec.rb index e4b193a9d8..c5a00b8233 100644 --- a/spec/ruby/core/module/attr_writer_spec.rb +++ b/spec/ruby/core/module/attr_writer_spec.rb @@ -61,4 +61,10 @@ describe "Module#attr_writer" do it "is a public method" do Module.should have_public_instance_method(:attr_writer, false) end + + it "returns an array of defined methods names as symbols" do + Class.new do + (attr_writer :foo, 'bar').should == [:foo=, :bar=] + end + end end |