Rspec失败,“范围不好”

时间:2013-11-25 18:39:21

标签: ruby-on-rails ruby rspec

我的方法:

def swap (order)
   order = order == 'asc' ? 'desc' : 'asc'
end

规格:

let(:order) { 'wrong_order'}

it 'swaps the order' do
 expect(swap(order)).to eq('asc')
end

此rspec失败并显示消息ArgumentError: bad value for range

但是,如果我通过'desc'或'asc'并改变期望它可以正常工作。

另外我在irb上尝试了这个,只是通过交换('')它给了我'asc'不确定为什么rspec失败

1 个答案:

答案 0 :(得分:2)

尝试使用测试更加明确:

let(:order) { 'wrong_order'}

it 'swaps the order' do
  swapped_order = swap(order)

  expect(swapped_order).to eq('asc')
end