Rails - Rspec错误:没有隐式转换

时间:2014-06-04 12:32:13

标签: ruby-on-rails ruby rspec

我正在测试一个接收可选参数的模型,而Rspec给我一个错误:

no implicit conversion of Symbol into Integer

我的路线:

get "classification/teams(/:team_id)" => "classifications#teams"

我的模特:

class Classification
def self.teams(params = [])
    team_id = params[:team_id] unless params[:team_id].nil?
    ...

我的测试:

it 'returns the classification' do
    expect(Classification.teams).to be_true
end

我的API运行良好,但我需要实施一些测试,并且我收到此错误。 如果我为params [' team_id']更改了params [:team_id],则会发生错误,但是:没有将String隐式转换为Integer。

1 个答案:

答案 0 :(得分:3)

你的问题在于params的默认值,它应该是hash,而不是数组:

def self.teams(params = {})
相关问题