Sha256: 2e1d1babe442f8209b12c8bafd373e90c71689461e4de6f7992c9e5fc1927c42

Contents?: true

Size: 1.03 KB

Versions: 18

Compression:

Stored size: 1.03 KB

Contents

class ParametrisedEvent
  include AASM
  aasm do
    state :sleeping, :initial => true
    state :showering
    state :working
    state :dating
    state :prettying_up

    event :wakeup do
      transitions :from => :sleeping, :to => [:showering, :working]
    end

    event :shower do
      transitions :from => :sleeping, :to => :showering, :after => :wet_hair, :success => :wear_clothes
    end

    event :dress do
      transitions :from => :sleeping, :to => :working, :after => :wear_clothes, :success => :wear_makeup
      transitions :from => :showering, :to => [:working, :dating], :after => Proc.new { |*args| wear_clothes(*args) }, :success => proc { |*args| wear_makeup(*args) }
      transitions :from => :showering, :to => :prettying_up, :after => [:condition_hair, :fix_hair], :success => [:touch_up_hair]
    end
  end

  def wear_clothes(shirt_color, trouser_type=nil)
  end

  def wear_makeup(makeup, moisturizer)
  end

  def wet_hair(dryer)
  end

  def condition_hair
  end

  def fix_hair
  end

  def touch_up_hair
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
aasm-5.3.1 spec/models/parametrised_event.rb
aasm-5.3.0 spec/models/parametrised_event.rb
aasm-5.2.0 spec/models/parametrised_event.rb
aasm-5.1.1 spec/models/parametrised_event.rb
aasm-5.1.0 spec/models/parametrised_event.rb
aasm-5.0.8 spec/models/parametrised_event.rb
aasm-5.0.7 spec/models/parametrised_event.rb
aasm-5.0.6 spec/models/parametrised_event.rb
aasm-5.0.5 spec/models/parametrised_event.rb
aasm-5.0.4 spec/models/parametrised_event.rb
aasm-5.0.3 spec/models/parametrised_event.rb
aasm-5.0.2 spec/models/parametrised_event.rb
aasm-5.0.1 spec/models/parametrised_event.rb
aasm-5.0.0 spec/models/parametrised_event.rb
aasm-4.12.3 spec/models/parametrised_event.rb
aasm-4.12.2 spec/models/parametrised_event.rb
aasm-4.12.1 spec/models/parametrised_event.rb
aasm-4.12.0 spec/models/parametrised_event.rb