Ruby 如何循环RSpec中主题的属性?
是否可以像这样循环使用subject属性:Ruby 如何循环RSpec中主题的属性?,ruby,rspec,Ruby,Rspec,是否可以像这样循环使用subject属性: subject { assignment } its(:submissions).each do |submission| submission.grade should eq 100 end 我得到的错误是未定义每个类的方法… 我也试过了 subject { assignment } its(:submissions) do each do |submission| submission.grade should eq 100
subject { assignment }
its(:submissions).each do |submission|
submission.grade should eq 100
end
我得到的错误是未定义每个类的方法…
我也试过了
subject { assignment }
its(:submissions) do
each do |submission|
submission.grade should eq 100
end
end
得到
未定义的方法“each”
RSpec::Core::ExampleGroup::Nested_4::Nested_4::Nested_1::Nested_1:0x00000005f91ac8
您可以在示例中使用
subject
方法获取主题。因此,您可以这样做:
subject { assignment }
it "has some number of submissions, each with a grade of 100" do
subject.submissions.each { |submission| submission.grade.should eq 100 }
end
旁注:请改为使用让:
let(:assignment) { create :assignment } # or whatever is necessary to create the assignment
it "has some number of submissions, each with a grade of 100" do
assignment.submissions.each { |submission| submission.grade.should eq 100 }
end