Sha256: 2f5b97e68852b113451877af24e6e6159b060d9af703f6493dbf20c0634ee633
Contents?: true
Size: 852 Bytes
Versions: 5
Compression:
Stored size: 852 Bytes
Contents
require 'spec_helper' describe Virtus::ClassMethods, '#attribute' do subject { object.attribute(name, type) } let(:object) { Class.new { include Virtus } } let(:descendant) { Class.new(object) } let(:name) { :name } let(:type) { Virtus::Attribute::String } def assert_attribute_added(klass, name, attribute_class) attributes = klass.attribute_set attributes[name].should be_nil subject attribute = attributes[name] attribute.should_not be_nil attribute.name.should be(name) attribute.class.should be(attribute_class) end it { should be(object) } it 'adds the attribute to the class' do assert_attribute_added(object, name, type) end it 'adds the attribute to the descendant' do assert_attribute_added(descendant, name, type) end end
Version data entries
5 entries across 5 versions & 2 rubygems