gpt4 book ai didi

ruby-on-rails - 在 RSpec/Rails 中测试数组的预期顺序

转载 作者:数据小太阳 更新时间:2023-10-29 07:53:12 24 4
gpt4 key购买 nike

在 RSpec 规范文件中我有以下测试

it 'should return 5 players with ratings closest to the current_users rating' do
matched_players = User.find(:all,
:select => ["*,(abs(rating - current_user.rating)) as player_rating"],
:order => "player_rating",
:limit => 5)

# test that matched_players array returns what it is suppose to
end

我将如何完成此测试以测试 matched_players 是否返回正确的用户。

最佳答案

我认为您应该首先将一些测试用户引入测试数据库(例如使用工厂),然后查看测试是否返回正确的用户。

此外,在您的模型中有一个方法可以返回匹配的用户会更有意义。

例如:

describe "Player matching" do
before(:each) do
@user1 = FactoryGirl.create(:user, :rating => 5)
...
@user7 = FactoryGirl.create(:user, :rating => 3)
end

it 'should return 5 players with ratings closest to the current_users rating' do
matched_players = User.matched_players
matched_players.should eql [@user1,@user3,@user4,@user5,@user6]
end
end

关于ruby-on-rails - 在 RSpec/Rails 中测试数组的预期顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17204424/

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