Sha256: 26c18667aea947aa42968b22dc169943bb59c15d1f59d2e1a1111fa477e58088
Contents?: true
Size: 820 Bytes
Versions: 2
Compression:
Stored size: 820 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.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
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
virtus-0.5.1 | spec/unit/virtus/class_methods/attribute_spec.rb |
virtus-0.5.0 | spec/unit/virtus/class_methods/attribute_spec.rb |