Thibault Jouan
6f8bb69c92
Force Display test double usage in Runner.run specs
...
We need to mock Display.new to return a test double with #open
disabled, in order to prevent the manager to initiate real connections
to current display and because we don't want to inject a Display
instance all the way down from Runner to Manager (at least not yet).
2015-04-09 03:23:12 +00:00
Thibault Jouan
199269f046
Fix missing require call for optparse
2015-04-09 01:28:22 +00:00
Thibault Jouan
dc77ba0626
Regroup stdlib require calls in main module
2015-04-09 01:28:05 +00:00
Thibault Jouan
19d37fb6c5
Specify exact uh pre-release version requirement
2015-04-09 01:21:13 +00:00
Thibault Jouan
7896af9485
Merge branch 'events-key_press-quit'
...
Implement a few basic classes to handle different concerns (Runner,
Manager, Dispatcher) and integrate them together with a hard coded hook
for `mod1+q' key binding, which will initiate program termination.
2015-04-09 00:30:17 +00:00
Thibault Jouan
ceac19b346
Quit on `mod1+q' key binding
...
* Loop our runner until it is "stopped";
* Use the event dispatcher to stop the runner on `mod1+q' key press;
* Tell the manager to grab the `q' key.
2015-04-09 00:30:13 +00:00
Thibault Jouan
224ae6be5f
Implement Runner#run_until
2015-04-09 00:30:13 +00:00
Thibault Jouan
c8f12af987
Implement Manager#handle
2015-04-09 00:30:13 +00:00
Thibault Jouan
498feb809e
Instanciate Manager with a mandatory Dispatcher
2015-04-09 00:30:13 +00:00
Thibault Jouan
7becda9f31
Implement Dispatcher#emit
2015-04-09 00:30:13 +00:00
Thibault Jouan
ca8f60365f
Ignore /tmp/ from version control
2015-04-09 00:30:13 +00:00
Thibault Jouan
6b0676e547
Accept constructor options in Runner.run factory
2015-04-09 00:30:13 +00:00
Thibault Jouan
7c8b312084
Accept stopped status param in Runner constructor
2015-04-09 00:30:13 +00:00
Thibault Jouan
fd13accaf6
Assign a Dispatcher in new Runner instances
2015-04-09 00:30:13 +00:00
Thibault Jouan
585903240b
Implement Manager#handle_pending_events
2015-04-09 00:30:13 +00:00
Thibault Jouan
d3007201cc
Accept Display instance in Manager constructor
2015-04-09 00:30:13 +00:00
Thibault Jouan
b354ffcd62
Add stopped status notion in Runner
2015-04-09 00:30:12 +00:00
Thibault Jouan
44a69b75c6
Accept a Manager instance in Runner constructor
2015-04-09 00:30:12 +00:00
Thibault Jouan
b4b4f086d4
Implement Manager#grab_key
2015-04-09 00:30:12 +00:00
Thibault Jouan
84ad217d5b
Implement a basic event dispatcher
2015-04-09 00:30:12 +00:00
Thibault Jouan
49fe77ddb1
Integrate our new Runner into CLI
2015-04-09 00:30:12 +00:00
Thibault Jouan
ea0034fd7e
Implement basic Runner
2015-04-09 00:30:12 +00:00
Thibault Jouan
cd76c4e270
Implement basic Manager
2015-04-09 00:30:12 +00:00
Thibault Jouan
bc2ab4b9fa
Fix coding standards (extra lines in specs)
2015-04-09 00:30:00 +00:00
Thibault Jouan
1b6a6f9cea
Refactor CLI specs
2015-04-09 00:30:00 +00:00
Thibault Jouan
01d7805760
Add uhwm_wait_output cucumber helper
2015-04-08 16:46:58 +00:00
Thibault Jouan
f4b372ddcd
Refactor Env with ruby Forwardable
2015-04-07 23:16:00 +00:00
Thibault Jouan
304db803f3
Introduce Env to manage CLI env and config
2015-04-07 23:13:28 +00:00
Thibault Jouan
12075323c5
Add rspec rake task
2015-04-07 21:56:55 +00:00
Thibault Jouan
422a940eae
Implement basic CLI usage help
2015-04-07 21:56:49 +00:00
Thibault Jouan
f38a5761be
Add rspec exit helpers
2015-04-07 17:33:35 +00:00
Thibault Jouan
1658a616a8
Configure guard for cucumber and rspec
2015-04-07 17:33:16 +00:00
Thibault Jouan
4051a10612
Declare Uh::WM own error classes
2015-04-07 17:32:47 +00:00
Thibault Jouan
9ecdeedc3d
Configure cucumber to require support and steps
2015-04-07 17:31:57 +00:00
Thibault Jouan
7701b1d66d
Setup rspec tests
2015-04-07 16:54:12 +00:00
Thibault Jouan
8f9b767ce1
Connect to X server
2015-04-07 10:35:52 +00:00
Thibault Jouan
75cf74c217
Setup headless gem (Xvfb testing) for tests
2015-04-06 20:21:59 +00:00
Thibault Jouan
f2bb9b7f50
Setup cucumber test env with aruba
2015-04-06 19:02:17 +00:00
Thibault Jouan
8f9deb654d
Declare uh ~> 2.0 dependency
2015-04-06 16:36:48 +00:00
Thibault Jouan
33bf50d3ae
Setup bundler to manage gem dependencies
2015-04-06 16:36:20 +00:00
Thibault Jouan
46056482a7
Setup uh-wm gem
2015-04-06 16:23:21 +00:00
Thibault Jouan
511ff3e059
Initial commit
2015-04-06 16:15:49 +00:00