mik*_*927 8 ruby rspec ruby-on-rails
我在控制器中创建了一些公共方法,它做了一些工作.
def current_service
service_name = params[:controller].gsub('api/v1/', '').gsub(%r{/.+}, '')
end
Run Code Online (Sandbox Code Playgroud)
我想使用RSpec测试这个方法,但我不知道怎样才能使用params.我该怎么办?
Cod*_*eef 11
如果这是一个控制器规范,你应该可以做这样的事情:
allow(controller).to receive(:params).and_return({controller: 'a value'})
Run Code Online (Sandbox Code Playgroud)
或者,将params[:controller]语句移动到您的规范中的单独方法和存根.
| 归档时间: |
|
| 查看次数: |
4359 次 |
| 最近记录: |