Split Runner#register_event_hooks spec with context
This commit is contained in:
@@ -75,41 +75,45 @@ module Uh
|
|||||||
runner.events.emit :quit
|
runner.events.emit :quit
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'registers layout hook for :connected event' do
|
context 'layout hooks' do
|
||||||
runner.register_event_hooks
|
it 'registers for :connected event' do
|
||||||
expect(env.layout).to receive(:register).with :display
|
runner.register_event_hooks
|
||||||
runner.events.emit :connected, args: :display
|
expect(env.layout).to receive(:register).with :display
|
||||||
|
runner.events.emit :connected, args: :display
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'registers for :configure event' do
|
||||||
|
runner.register_event_hooks
|
||||||
|
expect(runner.events.emit :configure, args: :window)
|
||||||
|
.to eq Geo.new(0, 0, 42, 42)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'registers for :manage event' do
|
||||||
|
runner.register_event_hooks
|
||||||
|
expect(env.layout).to receive(:<<).with :window
|
||||||
|
runner.events.emit :manage, args: :window
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'registers layout hook for :configure event' do
|
context 'keys hooks' do
|
||||||
runner.register_event_hooks
|
it 'registers for :key' do
|
||||||
expect(runner.events.emit :configure, args: :window)
|
env.keybinds[:f] = -> { }
|
||||||
.to eq Geo.new(0, 0, 42, 42)
|
runner.register_event_hooks
|
||||||
end
|
expect(runner.events[:key, :f]).not_to be_empty
|
||||||
|
end
|
||||||
|
|
||||||
it 'registers layout hook for :manage event' do
|
it 'registers for :key with combined key bindings' do
|
||||||
runner.register_event_hooks
|
env.keybinds[[:f, :shift]] = -> { }
|
||||||
expect(env.layout).to receive(:<<).with :window
|
runner.register_event_hooks
|
||||||
runner.events.emit :manage, args: :window
|
expect(runner.events[:key, :f, :shift]).not_to be_empty
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'registers key bindings event hooks' do
|
it 'registers code evaluation with the actions handler' do
|
||||||
env.keybinds[:f] = -> { }
|
env.keybinds[:f] = code = proc { }
|
||||||
runner.register_event_hooks
|
runner.register_event_hooks
|
||||||
expect(runner.events[:key, :f]).not_to be_empty
|
expect(runner.actions).to receive(:evaluate).with code
|
||||||
end
|
runner.events.emit :key, :f
|
||||||
|
end
|
||||||
it 'registers combined key bindings event hooks' do
|
|
||||||
env.keybinds[[:f, :shift]] = -> { }
|
|
||||||
runner.register_event_hooks
|
|
||||||
expect(runner.events[:key, :f, :shift]).not_to be_empty
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'registers key bindings code evaluation with the actions handler' do
|
|
||||||
env.keybinds[:f] = code = proc { }
|
|
||||||
runner.register_event_hooks
|
|
||||||
expect(runner.actions).to receive(:evaluate).with code
|
|
||||||
runner.events.emit :key, :f
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user