guard-jasmine-headless-webkit/lib/guard/jasmine-headless-webkit.rb

35 lines
733 B
Ruby
Raw Normal View History

2011-05-23 22:37:19 +00:00
require 'guard'
require 'guard/guard'
2011-05-24 01:28:01 +00:00
require 'guard/jasmine-headless-webkit/runner'
2011-05-23 22:37:19 +00:00
module Guard
class JasmineHeadlessWebkit < Guard
2011-05-24 00:44:18 +00:00
def initialize(watchers = [], options = {})
super
@options = {
:all_on_start => true
}.merge(options)
end
2011-05-23 22:37:19 +00:00
def start
UI.info "Guard::JasmineHeadlessWebkit is running."
2011-05-24 00:44:18 +00:00
run_all if @options[:all_on_start]
2011-05-23 22:37:19 +00:00
end
def run_all
2011-05-24 01:28:01 +00:00
JasmineHeadlessWebkitRunner.run
2011-05-23 22:37:19 +00:00
end
def run_on_change(paths)
2011-05-24 01:28:01 +00:00
run_all if JasmineHeadlessWebkitRunner.run(paths) != 1
2011-05-23 22:37:19 +00:00
end
end
2011-05-24 00:59:20 +00:00
class Dsl
def newest_js_file(path)
2011-05-23 22:37:19 +00:00
Dir[path + '*.{js,coffee}'].sort { |left, right| File.mtime(right) <=> File.mtime(left) }.first
end
end
end