gpt4 book ai didi

ruby-on-rails - 如何检查 'kind_of?' 到 'count' 或在 RSpec 'its' 功能中运行其他方法?

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

我正在使用 Ruby on Rails 3.0.9、RSpec-rails 2 和 FactoryGirl。我正在尝试使用 RSpec its 功能检查 kind_of?,以 count,... 数组中存在的项目。也就是说,我想做如下的事情:

subject do
Factory(
:user,
:articles => 3.times.inject([]) { |articles,i|
articles << Factory(
:article,
:user_id => Factory(:user)
)
}
end

# Note the (wrong!) usage of 'first', 'count' methods
its(:articles) { first.should be_kind_of(Article) }
its(:articles) { count.should == 10 }

但是,由于出现错误,似乎无法按照我在上面代码中的(错误的!)方式进行操作。 有没有办法做到这一点(检查kind_of?count,...)

最佳答案

http://rdoc.info/github/rspec/rspec-core/master/RSpec/Core/Subject/ClassMethods:its :

  describe Person do
subject do
Person.new.tap do |person|
person.phone_numbers << "555-1212"
end
end

its("phone_numbers.first") { should eq("555-1212") }
end

所以在你的情况下:

its('articles.first') { should be_kind_of(Article) }
its('articles.count') { should == 10 }

关于ruby-on-rails - 如何检查 'kind_of?' 到 'count' 或在 RSpec 'its' 功能中运行其他方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7489044/

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