spec/comparing_state_spec.rb in maintain-0.1.3 vs spec/comparing_state_spec.rb in maintain-0.1.4
- old
+ new
@@ -126,9 +126,35 @@
@maintainer.state.should be <= 'new'
@maintainer.state.should be <= 0
end
end
+
+ describe "identity comparison" do
+ before :each do
+ MaintainTest.maintain :state, :default => :new do
+ state :new, 1
+ state :overdue, 2
+ state :closed, 3
+ end
+ @maintainer = MaintainTest.new
+ end
+
+ it "should work with case statements" do
+ result = case @maintainer.state
+ when :overdue
+ nil
+ when :closed
+ nil
+ when :new
+ "foo"
+ else
+ nil
+ end
+ result.should == "foo"
+ end
+ end
+
describe "integer states" do
before :each do
MaintainTest.maintain :state, :default => :new do
state :new, 1
state :overdue, 2
\ No newline at end of file