我在下面有代码将我的模型变量传递给视图
describe "payslips/index.html.erb" do
it "should display the page" do
assign(:income_tax_rates, [
stub_model(IncomeTaxRate.all)
])
render
puts rendered
# expect(rendered).to include()
end
end
然后我有这个:
<% @income_tax_rates.each do |tax_rate| %>
<tr>
<td><%= number_to_currency tax_rate[:income_from], :precision => 0 %></td>
<td><%= number_to_currency tax_rate[:income_to], :precision => 0 %></td>
<td><%= tax_rate[:start] %></td>
<td><%= tax_rate[:finish] %></td>
<td><%= tax_rate[:rate] %></td>
<td><%= number_to_currency tax_rate[:premium], :precision => 0 %></td>
</tr>
<% end %>
但这似乎并没有产生任何东西,而是我得到空td
我能做些什么来改善这一点?
RSpec 的stub_model
需要一个常量作为参数,例如用于定义模型的ActiveRecord::Base
子类。它还需要额外的参数或块来设置类实例的值。
你已经传入了一个ActiveModel::Relation
,这是all
的结果,即使你提供了预期的类常量,你也没有提供任何参数值。
请参阅示例,了解如何在 https://www.relishapp.com/rspec/rspec-rails/v/2-3/docs/mocks/stub-model