Sha256: 27dd701cad95cf799a3688ade3075af446f54872cd6e17b0ba7a2fa8e87ff428
Contents?: true
Size: 1.18 KB
Versions: 9
Compression:
Stored size: 1.18 KB
Contents
require 'model/spec_helper' require 'model/models/versioned_model' require 'ronin/model/has_version' describe Model::HasVersion do subject { VersionedModel } before(:all) do subject.auto_migrate! subject.create( :version => '1.1', :content => 'Foo' ) subject.create( :version => '1.1', :content => 'Bar' ) subject.create( :version => '1.2', :content => 'Foo' ) end it "should include Ronin::Model" do subject.ancestors.should include(Model) end it "should define a version property" do subject.properties.should be_named(:version) end it "should default the version property to '1.0'" do resource = subject.new resource.version.should == '0.1' end it "should allow querying specific revisions" do resources = subject.revision('1.1') resources.length.should == 2 resources[0].version.should == '1.1' resources[0].content.should == 'Foo' resources[1].version.should == '1.1' resources[1].content.should == 'Bar' end it "should allow querying the latest revision" do resource = subject.all(:content => 'Foo').latest resource.version.should == '1.2' end end
Version data entries
9 entries across 9 versions & 1 rubygems