summaryrefslogtreecommitdiff
path: root/Guardfile
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-11-18 21:06:19 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-11-18 21:06:19 +0000
commitaaf124b0f7698f5def277b02ab97f3992fe1569d (patch)
treee5ed2e5430b4eb67ea4a0e0348979d7967ce050d /Guardfile
parent143f196f8b3c40ceb7e9335a8dcc712b079519b9 (diff)
downloadgitlab-ce-aaf124b0f7698f5def277b02ab97f3992fe1569d.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'Guardfile')
-rw-r--r--Guardfile43
1 files changed, 43 insertions, 0 deletions
diff --git a/Guardfile b/Guardfile
new file mode 100644
index 00000000000..8a43f414ca9
--- /dev/null
+++ b/Guardfile
@@ -0,0 +1,43 @@
+# frozen_string_literal: true
+
+# More info at https://github.com/guard/guard#readme
+
+cmd = ENV['SPRING'] ? 'spring rspec' : 'bundle exec rspec'
+
+guard :rspec, cmd: cmd do
+ require "guard/rspec/dsl"
+ dsl = Guard::RSpec::Dsl.new(self)
+
+ directories %w(app ee lib spec)
+
+ # RSpec files
+ rspec = dsl.rspec
+ watch(rspec.spec_helper) { rspec.spec_dir }
+ watch(rspec.spec_support) { rspec.spec_dir }
+ watch(rspec.spec_files)
+
+ # Ruby files
+ ruby = dsl.ruby
+ dsl.watch_spec_files_for(ruby.lib_files)
+
+ # Rails files
+ rails = dsl.rails(view_extensions: %w(erb haml slim))
+ dsl.watch_spec_files_for(rails.app_files)
+ dsl.watch_spec_files_for(rails.views)
+
+ watch(rails.controllers) do |m|
+ [
+ rspec.spec.call("routing/#{m[1]}_routing"),
+ rspec.spec.call("controllers/#{m[1]}_controller")
+ ]
+ end
+
+ # Rails config changes
+ watch(rails.spec_helper) { rspec.spec_dir }
+ watch(rails.routes) { "#{rspec.spec_dir}/routing" }
+ watch(rails.app_controller) { "#{rspec.spec_dir}/controllers" }
+
+ # Capybara features specs
+ watch(rails.view_dirs) { |m| rspec.spec.call("features/#{m[1]}") }
+ watch(rails.layouts) { |m| rspec.spec.call("features/#{m[1]}") }
+end