Sha256: b039c4f3dfadbefb7be649da5bea3c695a7eddf931fcd44c9af8b9509cd15ffc

Contents?: true

Size: 640 Bytes

Versions: 7

Compression:

Stored size: 640 Bytes

Contents

$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
require 'end_state'
require 'end_state_matchers'

class Easy < EndState::Guard
  def will_allow?
    true
  end
end

class NoOp < EndState::Finalizer
  def call
    true
  end
end

class Machine < EndState::StateMachine
  transition a: :b do |t|
    t.guard Easy
    t.finalizer NoOp
  end
end

describe Machine do
  specify { expect(Machine).to have_transition(a: :b).with_guard(Easy).with_finalizer(NoOp) }
  specify { expect(Machine).to have_transition(a: :b).with_guards(Easy, Easy).with_finalizers(NoOp, NoOp) }
  specify { expect(Machine).not_to have_transition(a: :c) }
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
end_state-0.4.0 examples/machine_spec.rb
end_state-0.3.2 examples/machine_spec.rb
end_state-0.3.1 examples/machine_spec.rb
end_state-0.3.0 examples/machine_spec.rb
end_state-0.2.0 examples/machine_spec.rb
end_state-0.1.0 examples/machine_spec.rb
end_state-0.0.2 examples/machine_spec.rb