Sha256: b050ae2d51112dd5643b096e49e29914f7c171dc16eaee875723e3992cf1b341

Contents?: true

Size: 1.26 KB

Versions: 17

Compression:

Stored size: 1.26 KB

Contents

require 'spec_helper'

describe "EventDsl" do

  describe "event" do

    before(:each) do
      class Earth
        extend DataMapper::Is::StateMachine::EventDsl
        stub!(:state_machine_context?).and_return(true)
        stub!(:push_state_machine_context)
        stub!(:pop_state_machine_context)
      end
      machine = mock("machine", :events => [], :column => :state)
      Earth.instance_variable_set(:@is_state_machine, { :machine => machine })
    end

    it "declaration should succeed" do
      class Earth
        event :sunrise
      end
    end

  end

  describe "transition" do

    before(:each) do

      class Earth
        extend DataMapper::Is::StateMachine::EventDsl

        stub!(:state_machine_context?).and_return(true)
        stub!(:push_state_machine_context)
        stub!(:pop_state_machine_context)
      end

      machine = mock("machine", :events => [], :column => :state)
      event = mock("sunrise_event")
      event.stub!(:add_transition)
      Earth.instance_variable_set(:@is_state_machine, {
        :machine => machine,
        :event   => { :name => :sunrise, :object => event }
      })
    end

    it "transition definition should succeed" do
      class Earth
        transition :from => :night, :to => :day
      end
    end

  end

end

Version data entries

17 entries across 17 versions & 2 rubygems

Version Path
ardm-is-state_machine-1.2.0 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.2.0 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.2.0.rc2 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.2.0.rc1 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.1.0 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.1.0.rc3 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.1.0.rc2 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.1.0.rc1 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.0.2 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.0.1 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.0.0 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.0.0.rc3 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.0.0.rc2 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-1.0.0.rc1 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-0.10.2 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-0.10.1 spec/unit/dsl/event_dsl_spec.rb
dm-is-state_machine-0.10.0 spec/unit/dsl/event_dsl_spec.rb