In my gemfile ...
group :development, :test do gem 'capybara', "1.1.2" gem 'database_cleaner', "0.7.0" gem 'cucumber', "1.1.2" gem 'cucumber-rails', "1.2.0" gem 'rspec-rails', "2.7.0" gem 'spork', "0.9.0.rc9" gem 'launchy'
My Guard file has two groups (: specs and: features).
group :specs do guard :spork, :rspec_env => { 'RAILS_ENV' => 'test' } do watch('config/application.rb') watch('config/environment.rb') watch(%r{^config/environments/.+\.rb$}) watch(%r{^config/initializers/.+\.rb$}) watch('spec/spec_helper.rb') end guard :rspec, :version => 2 do watch(%r{^spec/.+_spec\.rb$}) watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" } watch('spec/spec_helper.rb') { "spec" } # # Rails example watch(%r{^spec/.+_spec\.rb$}) watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" } watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" } watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] } watch(%r{^spec/support/(.+)\.rb$}) { "spec" } watch('spec/spec_helper.rb') { "spec" } watch('config/routes.rb') { "spec/routing" } watch('app/controllers/application_controller.rb') { "spec/controllers" } # Capybara request specs watch(%r{^app/views/(.+)/.*\.(erb|haml)$}) { |m| "spec/requests/#{m[1]}_spec.rb" } end end group :features do guard 'spork', :cucumber_env => { 'RAILS_ENV' => 'test' } do watch('config/application.rb') watch('config/environment.rb') watch(%r{^config/environments/.+\.rb$}) watch(%r{^config/initializers/.+\.rb$}) watch('spec/spec_helper.rb') end guard 'cucumber' do watch(%r{^features/.+\.feature$}) watch(%r{^features/support/.+$}) { 'features' } watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'features' } end end
When I try to run the: specs group, I would expect the defender to run Spork only for Rspec.
guard -g specs start
However, I see in the output that the guard launches Spork for both Rspec and Cucumber.
~/current[master]% guard -g specs start WARNING: You are using Guard outside of Bundler, this is dangerous and may not work. Using `bundle exec guard` is safer. Guard could not detect any of the supported notification libraries. Guard is now watching at '/Users/rupert/Desktop/cws-rails' Starting Spork for RSpec & Cucumber Using RSpec Using Cucumber Preloading Rails environment Preloading Rails environment Loading Spork.prefork block... Loading Spork.prefork block... Spork is ready and listening on 8990! Spork is ready and listening on 8989! Spork server for RSpec & Cucumber successfully started Guard::RSpec is running, with RSpec 2! Running all specs
Is there any configuration file for SPORK or protection that I could skip?
UPDATE:
source share