最近,我将Devise添加到一个具有现有身份验证系统的项目中(来自Rails教程)。
在我添加Devise之前,我的UsersController处理了所有新的用户注册工具,创建、编辑、销毁,我为它们编写了大量的rspec测试。当然,现在注册是由Devise处理的,我不得不将这些测试从users_controller_spec.rb中删除。
我可以把这些测试放在哪里,以确保设计登记程序正常工作?
编辑:
好的,我相信自从我发布这个问题以来,我在这方面已经取得了一些进展。
首先,我在/app/控制器/ registrations _Controller.rb中创建了自己的RegistrationsController,从而高估了Devise控制器。
class RegistrationsController < Devise::RegistrationsController
end然后,我告诉Devise使用这个控制器在我的/config/ use es.rb文件中注册:
devise_for :users, :controllers => { :registrations => "registrations" }现在,我所需要做的就是让我的测试在/spec/controllers/registrations_controller_spec.rb中工作。
我在正确的轨道上吗?
发布于 2011-03-05 15:18:04
如果您计划重写一些控制器方法,这将是一个很好的解决方案。通常,您不会测试其他已经有自己的测试套件的框架。你只是在重复测试。也就是说,如果你觉得拥有自己的生活更舒服,那就去做吧。
https://stackoverflow.com/questions/5180682
复制相似问题