Sha256: f9d5de05e960c9602f77b81e3f25f1e361aabab82dc0917a64d98c320ec7fdea
Contents?: true
Size: 1.62 KB
Versions: 2
Compression:
Stored size: 1.62 KB
Contents
# Specs for assigning states require 'spec_helper' require 'maintain' describe Maintain do before :each do class ::MaintainTest attr_accessor :existant_attribute extend Maintain end end describe "setting" do describe "string states" do before :each do MaintainTest.maintain :state do state :new state :overdue state :closed end @maintainer = MaintainTest.new end it "should, you know, work" do @maintainer.state = :new @maintainer.state.should == :new @maintainer.state = 'new' @maintainer.state.should == :new @maintainer.state = 0 @maintainer.state.should == :new @maintainer.state.name.should == "new" @maintainer.state = 'nada' @maintainer.state.should be_nil end it "should support a `state!` bang method, too!" do @maintainer.new! @maintainer.state.should == :new @maintainer.overdue! @maintainer.state.should == :overdue @maintainer.closed! @maintainer.state.should == :closed end end describe "integer states" do before :each do MaintainTest.maintain :state do state :new, 1 state :overdue, 2 state :closed, 3 end @maintainer = MaintainTest.new end it "should, you know, work" do @maintainer.state = 1 @maintainer.state.should == :new @maintainer.state = 'new' @maintainer.state.should == :new @maintainer.state = :new @maintainer.state.should == :new end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
maintain-0.2.23 | spec/setting_state_spec.rb |
maintain-0.2.22 | spec/setting_state_spec.rb |