Michael Kessler
4451d73583
Move the template initialization to the Guard module and add specs.
2011-10-04 09:46:14 +02:00
Michael Kessler
7dcd7ca168
Update wrong spec description.
2011-10-01 13:37:49 +02:00
Michael Kessler
e33f5df518
Make Guard implementation of :task_has_failed simple.
...
This change makes sure that Guard implementation can just
`throw :task_has_failed` without knowing whether the enclosing
group has enabled :halt_on_fail.
The problem with throw/catch is, that when you throw a :symbol,
you'll have to catch it, otherwise you get a 'uncatched throw' error.
When the Guard group has not enabled :halt_on_fail, we catch the throw
when execute the supervised task.
2011-09-30 18:35:04 +02:00
Michael Kessler
b64b7882f7
Refactor massive execute_supervised_task_for_all_guards method.
...
- Renamed some Guard methods to be shorter and more consistent.
- Extract methods from execute_supervised_task_for_all_guards for less complexity.
- Added more specs for extracted methods.
- Added more docs on how marking of deleted/moved files works.
- Refactor Guard to be unaware of the :watch_all_modifications options for simplicity.
2011-09-28 12:42:09 +02:00
Rémy Coutable
41ada16595
Allow more complex conditions when searching for guards
2011-09-23 00:39:27 +02:00
Rémy Coutable
12fcf15a95
New smart accessors for guards and groups
2011-09-23 00:21:30 +02:00
Rémy Coutable
078d55f13c
Actually halt guards' execution in a group only when the guard's task throw :task_has_failed (not when it returns false).
2011-09-16 01:20:22 +02:00
Rémy Coutable
b1b69924a7
First implementation of #97 "Guard dependencies".
2011-09-16 01:01:58 +02:00
Rémy Coutable
652c3d8661
Merge branch 'master' into hook
...
Conflicts:
lib/guard.rb
lib/guard/dsl.rb
spec/guard/dsl_spec.rb
spec/guard_spec.rb
2011-08-17 10:45:20 +02:00
Rémy Coutable
dc2ab97d23
Pass the group in the options hash instead of a new parameter in the Guard::Guard.initialize method!
2011-08-17 10:04:42 +02:00
Rémy Coutable
eb347ee266
Merge branch 'master' into hook
...
Conflicts:
Gemfile
Guardfile
README.markdown
Rakefile
lib/guard.rb
lib/guard/dsl.rb
lib/guard/interactor.rb
lib/guard/listener.rb
lib/guard/ui.rb
lib/guard/watcher.rb
spec/guard/dsl_spec.rb
spec/guard/notifier_spec.rb
2011-08-17 01:34:27 +02:00
Rémy Coutable
dd86402109
Add @groups attributes to keep track of the groups, ordered as in the Guardfile
2011-08-17 00:39:45 +02:00
Christian Höltje
091ecf3322
Add list command to CLI
...
This adds a list command, that shows all available
guard gems.
https://github.com/guard/guard/issues/111
2011-08-08 20:11:22 -04:00
Michael Kessler
9175b33da4
Merge branch 'master' of https://github.com/uk-ar/guard into uk-ar-master
...
Conflicts:
CHANGELOG.md
lib/guard.rb
lib/guard/cli.rb
2011-08-05 14:37:08 +02:00
Michael Kessler
14a859d728
Fix spec for Guard.get_guard_class
2011-08-05 10:23:54 +02:00
Rémy Coutable
38067f447f
Add some specs for Guard.start (just to ensure core methods are well called…)
2011-07-29 00:23:20 +02:00
yuuki arisawa
8d02eec38c
Add support not to change files when dry run.
2011-07-02 19:16:06 +09:00
yuuki arisawa
847b2b8740
Added some specs,and some lines in README/CHANGELOG for dry-run option.
...
And added support for Kernel.#` and %x literal.
2011-06-28 22:13:24 +09:00
Mislav Marohnić
17a654b171
refactor get_guard_class
to first try the constant and fallback to require
...
This enables defining inline guard handlers to override ones present in gems,
e.g. you could define an inline Guard::RSpec handler and have guard use that
instead of first trying to load 'guard/rspec' from the 'guard-rspec' gem.
Also gets rid of the ill-named method `try_to_load_gem`. Handlers are simply
found in the $LOAD_PATH and don't have to necessarily come from gems.
2011-06-07 15:42:45 +02:00
Rémy Coutable
cb5843aa47
In Ruby < 1.9, Symbol#downcase doesn't exist!
2011-06-02 00:40:37 +02:00
Rémy Coutable
72734e1587
Fixed a bug preventing from using "guard :test" in Guardfile!
2011-05-27 17:56:46 +02:00
John Bintz
310bc5b644
support for dashes in guard names
2011-05-23 19:07:12 -04:00
Michael Kessler
5f0c815256
Cleaning up all specs.
...
I basically went through all specs and applied the following rules:
* Use `describe` for methods and `context` for contexts.
* All class methods starts with `.` and instance methods with `#`.
* Removed all `it should`, because the specs _have to_.
* Applied a consistant naming on all listener specs.
* Make fixture usage more fail save by giving generous sleep times.
* Make all behaviour description non-technical and easy to understand.
The goal of this excercise was to have a documentation that is easy
readable and describes the behaviour and not the implementation.
Try it out by using the RSpec documentation format!
2011-05-13 11:26:05 +02:00
Thibaud Guillaume-Gentil
f424854e61
Refactorized notifier enabling/disabling
2011-05-10 21:22:25 +02:00
Thibaud Guillaume-Gentil
1e5ab84b3a
Fixed Guard::Notifier (when growl/libnotify not present)
2011-05-08 21:56:46 +02:00
Thibaud Guillaume-Gentil
2f94f9e22f
Fixed notification option
...
Only print notification "Install message" once
Added GUARD_NOTIFY=false env variable support
Fixes #28
2011-05-06 23:19:31 +02:00
Thibaud Guillaume-Gentil
5740548a51
Kept support of Rubygems < 1.8.0 (for now!)
2011-05-06 21:51:50 +02:00
Thibaud Guillaume-Gentil
2da724f5e9
Fixed Rubygems deprecation messages
2011-05-06 21:23:30 +02:00
monocle
134cbdb007
Hook - 1) Send args to hooks from Guard.supervised_task
...
2) Pass args from hooks to callbacks
3) Suppress UI message from hooks unless in 'development'
2011-04-30 00:45:38 +02:00
Rémy Coutable
b83653db2e
Added #callback DSL, modified Guard and Guard::Hook a bit in consequence.
...
Signed-off-by: Rémy Coutable <remy@jilion.com>
2011-04-30 00:45:38 +02:00
monocle
b646ae53f6
Fix preexisting tests after adding default hooks
2011-04-30 00:45:13 +02:00
Jeff Sacks
38c371272d
fixing require bug; updating documentation and version
2011-04-25 09:18:59 -05:00
Jeff Sacks
a0b6ecacdb
adding support for inline classes
2011-04-21 16:39:46 -05:00
Rémy Coutable
9b981f5459
Run guards for new modified files only if any guard match any file (preventing from clearing the screen when no guard will run!).
...
Signed-off-by: Rémy Coutable <remy@jilion.com>
2011-04-16 23:13:29 +02:00
Thibaud Guillaume-Gentil
42c27242e1
Added a command line option (-n false) to disable notifications (growl/libnotify). closed #28
2011-04-10 22:32:29 +02:00
Thibaud Guillaume-Gentil
59f555e086
Switched to gem which command to locate gem path rather than open-gem
2011-02-22 15:15:09 +01:00
koshigoe
36e11c3820
fixed problem: Guard.get_guard_class return wrong class when loaded nested class.
...
The problem cause when using guard-ego with guard-spork.
2011-02-19 03:53:05 +09:00
Thibaud Guillaume-Gentil
2fc6745837
Merge branch 'master' of github.com:guard/guard
...
Conflicts:
lib/guard.rb
lib/guard/interactor.rb
spec/guard_spec.rb
2010-11-30 21:23:53 +01:00
Thibaud Guillaume-Gentil
53a79691a5
Kept listener running in thread even when guards plugin are also running.
2010-11-30 21:15:03 +01:00
Rémy Coutable
3116b13f1b
Optimized spec_helper, remove useless code and add the "bypass when test env" for UI.error
2010-11-26 00:57:08 +01:00
Rémy Coutable
e2247ea732
Improving, cleaning & making clear Guard class' specs
2010-11-03 23:31:00 +01:00
Thibaud Guillaume-Gentil
9c15536eda
Little "refactoring"
2010-10-28 08:47:26 +02:00
Olivier Amblet
cb8b845eb6
A bad guard do not threaten the whole process.
...
Every guard task are now executed through
supervised_task method.
If a guard failed to achieve its task(raise error)
a message is logged and the guard is fired.
The stop method now always quit the application
at the end.
Specs added. The documentation specify that if a
throw an exception, it will be dismissed.
2010-10-27 15:18:00 +02:00
Yann Lugrin
3cdcea3dfd
locate_guard chomp newline at end of path
2010-10-24 04:30:07 +08:00
Thibaud Guillaume-Gentil
2191bc1088
Rescue Interrupt on run yield
2010-10-20 22:40:44 +02:00
Thibaud Guillaume-Gentil
ec87585472
guard init <guard-name> command no more need Gemfile presence but open_gem is required now
...
Closes #3 .
2010-10-20 22:34:32 +02:00
Thibaud Guillaume-Gentil
c347c2c7e0
Added 1.8.6 compatibility
...
Closes #2 .
2010-10-18 21:45:31 +02:00