ruby on rails - Error al ejecutar el proceso Guard: no se puede encontrar el método de singularización
ruby-on-rails rspec (1)
De hecho, en el tutorial Rails que están agregando require ''active_support/core_ext''
en la parte superior del archivo Guardfile.
Creo que esto podría solucionar tu problema.
También asegúrese de declarar el protector de spork antes del protector de rspec.
Seguí el Tutorial de Rails sobre la configuración de pruebas automáticas con Guard y Spork . De vez en cuando, especialmente cuando guardo una plantilla sin editar en mi editor , Guard se quejará ( traza inversa completa ):
ERROR: Problem with watch action!
undefined method `singularize'' for "layouts":String
Mi Guardfile:
# A sample Guardfile
# More info at https://github.com/guard/guard#readme
guard ''rspec'', :version => 2, :all_after_pass => false, :cli => ''--drb'' 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{^app/(.*)(/.erb|/.haml)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
watch(%r{^lib/(.+)/.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
watch(%r{^app/controllers/(.+)_(controller)/.rb$}) do |m|
["spec/routing/#{m[1]}_routing_spec.rb",
"spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb",
"spec/acceptance/#{m[1]}_spec.rb",
"spec/requests/#{m[1].singularize}_pages_spec.rb"] ### Look here ###
end
watch(%r{^app/views/(.+)/}) do |m|
"spec/requests/#{m[1].singularize}_pages_spec.rb" ### Look here ###
end
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
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(''Gemfile'')
watch(''Gemfile.lock'')
watch(''spec/spec_helper.rb'')
watch(''test/test_helper.rb'')
end
Guard no se queja si reinicio, pero reiniciar es un poco molesto; sin duda, no es tan molesto como ejecutar rspec
cada vez que quiero una prueba.
-
.autotest
la sugerencia en esta publicación , pero creo que.autotest
puede ser el archivo incorrecto para guardian, ya que esto no soluciona el problema. - El único error similar que encontré con Google no parece estar relacionado.