class TransitionCollectionWithDuplicateActionsTest
Public Instance Methods
save()
click to toggle source
# File test/unit/transition_collection_test.rb, line 463 def save (@actions ||= []) << :save :save end
setup()
click to toggle source
# File test/unit/transition_collection_test.rb, line 459 def setup @klass = Class.new do attr_reader :actions def save (@actions ||= []) << :save :save end end @state = StateMachine::Machine.new(@klass, :initial => :parked, :action => :save) @state.state :idling @state.event :ignite @status = StateMachine::Machine.new(@klass, :status, :initial => :first_gear, :action => :save) @status.state :second_gear @status.event :shift_up @object = @klass.new @transitions = StateMachine::TransitionCollection.new([ @state_transition = StateMachine::Transition.new(@object, @state, :ignite, :parked, :idling), @status_transition = StateMachine::Transition.new(@object, @status, :shift_up, :first_gear, :second_gear) ]) @result = @transitions.perform end
test_should_persist_states()
click to toggle source
# File test/unit/transition_collection_test.rb, line 490 def test_should_persist_states assert_equal 'idling', @object.state assert_equal 'second_gear', @object.status end
test_should_run_action_once()
click to toggle source
# File test/unit/transition_collection_test.rb, line 495 def test_should_run_action_once assert_equal [:save], @object.actions end
test_should_store_results_in_transitions()
click to toggle source
# File test/unit/transition_collection_test.rb, line 499 def test_should_store_results_in_transitions assert_equal :save, @state_transition.result assert_equal :save, @status_transition.result end
test_should_succeed()
click to toggle source
# File test/unit/transition_collection_test.rb, line 486 def test_should_succeed assert_equal :save, @result end