master/lib/guard/guard.rb
Darren Pearce b74d09b9d6 Merge remote branch 'upstream/master'
Conflicts:
	lib/guard.rb
	lib/guard/listener.rb
	spec/guard/listener_spec.rb
2011-09-13 16:50:24 -06:00

63 lines
1.4 KiB
Ruby

module Guard
class Guard
include Hook
attr_accessor :watchers, :options, :group
def initialize(watchers = [], options = {})
@group = options.delete(:group) || :default
@watchers, @options = watchers, options
end
# Guardfile template needed inside guard gem
def self.init(name)
if ::Guard::Dsl.guardfile_include?(name)
::Guard::UI.info "Guardfile already includes #{name} guard"
else
content = File.read('Guardfile')
guard = File.read("#{::Guard.locate_guard(name)}/lib/guard/#{name}/templates/Guardfile")
File.open('Guardfile', 'wb') do |f|
f.puts(content)
f.puts("")
f.puts(guard)
end
::Guard::UI.info "#{name} guard added to Guardfile, feel free to edit it"
end
end
# ================
# = Guard method =
# ================
# Call once when guard starts
# Please override initialize method to init stuff
def start
true
end
# Call once when guard quit
def stop
true
end
# Should be mainly used for "reload" (really!) actions like reloading passenger/spork/bundler/...
def reload
true
end
# Should be principally used for long action like running all specs/tests/...
def run_all
true
end
def run_on_change(paths)
true
end
def run_on_deletion(paths)
true
end
end
end