Sha256: 7d5e4dd77880daff30b40eca46648eb6cf2355ec9a1c89b924480dc484691003
Contents?: true
Size: 1.26 KB
Versions: 2
Compression:
Stored size: 1.26 KB
Contents
require File.expand_path('../spec_helper', File.dirname(__FILE__)) require 'gorillib/metaprogramming/mattr_accessor' describe Module do describe 'mattr_accessor' do before do m = @module = Module.new do mattr_accessor :foo mattr_accessor :bar, :instance_writer => false mattr_reader :shaq, :instance_reader => false end @class = Class.new @class.instance_eval { include m } @object = @class.new end it 'does not have an effect if already provided by another library.' unless ENV['QUIET_RSPEC'] it 'uses mattr default' do @module.foo.should be_nil @object.foo.should be_nil end it 'sets mattr value' do @module.foo = :test @object.foo.should == :test @object.foo = :test2 @module.foo.should == :test2 end it 'with :instance_writer => false, does not create instance writer' do @module.should respond_to(:foo) @module.should respond_to(:foo=) @object.should respond_to(:bar) @object.should_not respond_to(:bar=) end it 'with :instance_writer => false, does not create instance reader' do @module.should respond_to(:shaq) @object.should_not respond_to(:shaq) @object.should_not respond_to(:shaq=) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
gorillib-0.6.0 | old/spec/gorillib/metaprogramming/mattr_accessor_spec.rb |
gorillib-0.5.2 | old/spec/gorillib/metaprogramming/mattr_accessor_spec.rb |