Sha256: b186a2da77add1752dafbf4588c3fe21814a14421f3216dcad72d2eb3bbe4307

Contents?: true

Size: 441 Bytes

Versions: 2

Compression:

Stored size: 441 Bytes

Contents

# frozen_string_literal: true

RSpec.describe FiniteMachine::Hooks, '#[]' do
  it "adds and removes a single hook" do
    hooks = FiniteMachine::Hooks.new
    expect(hooks).to be_empty

    yielded = []
    event_type = FiniteMachine::HookEvent::Before
    hook = -> { }
    hooks.register(event_type, :foo, hook)

    hooks[event_type][:foo].each do |callback|
      yielded << callback
    end

    expect(yielded).to eq([hook])
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
finite_machine-0.12.1 spec/unit/hooks/find_spec.rb
finite_machine-0.12.0 spec/unit/hooks/find_spec.rb