class ActiveRecordTest::MachineWithNonColumnStateAttributeDefinedTest

Public Instance Methods

setup() click to toggle source
# File test/unit/integrations/active_record_test.rb, line 460
def setup
  @model = new_model do
    def status=(value)
      self['status'] = value
    end
    
    def status
      self['status']
    end
  end
  
  @machine = StateMachine::Machine.new(@model, :status, :initial => :parked)
  @machine.other_states(:idling)
  @record = @model.new
end
status() click to toggle source
# File test/unit/integrations/active_record_test.rb, line 466
def status
  self['status']
end
status=(value) click to toggle source
# File test/unit/integrations/active_record_test.rb, line 462
def status=(value)
  self['status'] = value
end
test_should_raise_exception_for_predicate_if_invalid_state_specified() click to toggle source
# File test/unit/integrations/active_record_test.rb, line 484
def test_should_raise_exception_for_predicate_if_invalid_state_specified
  assert_raise(IndexError) { @record.status?(:invalid) }
end
test_should_return_false_for_predicate_if_does_not_match_current_value() click to toggle source
# File test/unit/integrations/active_record_test.rb, line 476
def test_should_return_false_for_predicate_if_does_not_match_current_value
  assert !@record.status?(:idling)
end
test_should_return_true_for_predicate_if_matches_current_value() click to toggle source
# File test/unit/integrations/active_record_test.rb, line 480
def test_should_return_true_for_predicate_if_matches_current_value
  assert @record.status?(:parked)
end
test_should_set_initial_state_on_created_object() click to toggle source
# File test/unit/integrations/active_record_test.rb, line 488
def test_should_set_initial_state_on_created_object
  assert_equal 'parked', @record.status
end