¿Cómo se hace esto? No se pudo encontrar ningún ejemplo en línea ... (utilizando rspec 2.5.0
& rails 3.0.5
)¿Cómo especificar validates_uniqueness_of en Rspec?
5
A
Respuesta
10
encontré en shoulda-matchers
: http://rubydoc.info/github/thoughtbot/shoulda-matchers/master/frames
0
No estoy seguro si esto es exactamente lo que está buscando, pero se puede comprobar los mensajes de error después de la save
o update
@widget.save
#untested, but this should be close
@widget.errors.full_messages.include?("validation message you are looking for").should be true
Pero, sinceramente, esto probablemente no es algo que deba probar en las pruebas de su unidad (si es allí donde las está colocando). Básicamente estás duplicando pruebas de unidades que Rails ya ha hecho por ti. Sería más apropiado verificar el mensaje de error en la vista en una prueba de integración de pepino.
6
before(:each) do
@attr = { :bar => "foobar" }
end
it "should reject duplicate bar" do
Foo.create!(@attr)
duplicate_bar = Foo.new(@attr)
duplicate_bar.should_not be_valid
end
Cuestiones relacionadas
- 1. Rspec: cómo especificar request.env en una especificación auxiliar?
- 2. validates_uniqueness_of como alcance varias columnas
- 3. ¿Cómo puedo especificar varios directorios de los que extraer RSpec?
- 4. Rails AR validates_uniqueness_of contra la relación polimórfica
- 5. Cómo especificar un método privado
- 6. ¿Cómo puedo especificar el protocolo https en la especificación de enrutamiento con rspec?
- 7. Cómo establecer HTTP_USER_AGENT en las pruebas rspec
- 8. Rails validates_uniqueness_of across multiple columns with case insensitivity
- 9. cómo generar Rspec en rieles?
- 10. ¿Cómo especificar rangos en YAML?
- 11. Diferencia entre un bloque y un bloque de especificar en RSpec
- 12. RSpec vs Cucumber (historias RSpec)
- 13. ¿Cómo comenzar con Rspec?
- 14. compruebe (la ausencia de) `puts` en RSpec
- 15. Cómo especificar el "carácter
- 16. Cómo evitar una larga StackTrace en rspec
- 17. Cómo decir "should_receive" más veces en RSpec
- 18. Cómo probar los campos attr_accessible en RSpec
- 19. ¿Cómo cortar la onda transportadora en Rspec?
- 20. cómo probar i18n en Rails con RSpec
- 21. ¿Cómo ejecutas rspec y pepino en Heroku?
- 22. Cómo probar métodos de clase en RSPEC
- 23. ¿Cómo puedo depurar mejor en RSpec?
- 24. Prueba ActiveSupport :: Notificaciones con rspec
- 25. Cómo probar ThinkingSphinx utilizando RSpec
- 26. ¿Cómo usar RSpec sin rieles?
- 27. ¿Cómo puedo validar las salidas y cancelaciones en RSpec?
- 28. ¿Cómo escribo esto con rspec
- 29. ¿Cómo usar RSpec con JBuilder?
- 30. Cómo especificar perfiles activos en Maven3
wow, gracias! :) – dimsuz