gpt4 book ai didi

ruby-on-rails - stub ActiveRecord 结果数组

转载 作者:行者123 更新时间:2023-11-28 21:00:29 24 4
gpt4 key购买 nike

使用 Ruby 1.8.6,当被测试的代码对结果调用“计数”方法时, stub 查找器方法以返回数组不起作用:

User.any_instance.stubs(:friends).returns([user1, user2])

那是因为 Array.count 只是在 Ruby 1.8.7 中添加的。 Rails 还动态添加了一个计数方法,我相信是通过 ActiveRecord::Calculations 模块实现的。

有什么方法可以将这个结果数组转换成与 Rails finder 方法返回的特殊数组类型完全一样的东西吗?对结果进行分页很简单:我可以简单地调用 [].paginate。但这不适用于正常的取景器结果。我尝试了 [].extend(ActiveRecord::Calculations) 但这也不起作用。

最佳答案

你也可以模拟计数:

arr = [user1, user2]
arr.stubs(:count).returns(arr.size)
User.any_instance.stubs(:friends).returns(arr)

关于ruby-on-rails - stub ActiveRecord 结果数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2516273/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com