我使用ActiveRecord-table构建一个类作为数据源,里面有46个项目 我不明白这里的问题,似乎我无法在新数组中提取项目?
这是我的Rspec结果:
故障:
1) TrainSearch :rows has 46 items
Failure/Error: expect(checker.data).to eq(46)
expected: 46
got: #<ActiveRecord::Relation []>
(compared using ==)
这是我的代码:
class TrainSearch
attr_reader :data
def initialize
@data = Timetable.all
end
def rows
@rows ||= @data.map {|row| Row.new(row)}
end
end
这是我的代码: file
谢谢你的时间!
答案 0 :(得分:0)
Baloo在评论中指出的情况几乎就是这样。您的错误消息明确告诉您它的比较。
在没有看到代码本身的情况下,解释起来有点困难但是这里有。
您正在查询数据库中的某些记录(行?)并期望其中有46条记录。 您的查询返回ActiveRecord关系(所有行的数组)。要弄清楚你需要做多少行:
checker.data.count
您似乎还有另一个错误,我无法从给定的信息中追踪。您的查询返回一个空数组,以便计数将为0并仍然会失败。