-
Notifications
You must be signed in to change notification settings - Fork 8
/
Guardfile
32 lines (25 loc) · 827 Bytes
/
Guardfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# frozen_string_literal: true
guard :bundler do
watch('Gemfile')
watch('Gemfile.lock')
end
guard :rubocop do
watch(%r{.+\.rb$})
watch(%r{(?:.+/)?\.rubocop\.yml$}) { |m| File.dirname(m[0]) }
end
guard :rspec, cmd: 'bundle exec rspec' do
require 'guard/rspec/dsl'
dsl = Guard::RSpec::Dsl.new(self)
rspec = dsl.rspec
watch(rspec.spec_helper) { rspec.spec_dir }
watch(rspec.spec_support) { rspec.spec_dir }
watch(rspec.spec_files)
ruby = dsl.ruby
dsl.watch_spec_files_for(ruby.lib_files)
rails = dsl.rails
dsl.watch_spec_files_for(rails.app_files)
dsl.watch_spec_files_for(rails.views)
watch(rails.controllers) { |m| [rspec.spec.call("controllers/#{m[1]}_controller")] }
watch(rails.spec_helper) { rspec.spec_dir }
watch(rails.app_controller) { "#{rspec.spec_dir}/controllers" }
end