作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试测试我的费用报告应用。当我计算某件商品的税金时,我需要进行查询以查看是否应该对某件商品征税。
我的 item_spec.rb:
describe Item do
subject {Item.new(:report_id => 26 , :name => 'Gas' , :tax_id => 1 , :category_id => 15 , :sub_category_id => 1 , :job_id => 1 , :total => 20 )}
let(:tax) {Tax.find_by_id(subject.tax_id)}
let(:sub_category) {SubCategory.find_by_id(subject.sub_category_id)}
it 'Calculate Taxes and Cost' do
subject.set_nil_values
subject.calculate_tax(:tax, :sub_category)
end
end
这是我得到的错误:
1) Item Calculate with just Total
Failure/Error: subject.calculate_tax(:tax, :sub_category)
NoMethodError:
undefined method `rate' for :tax:Symbol
# ./app/models/item.rb:88:in `calculate_tax'
# ./spec/models/item_spec.rb:21:in `block (2 levels) in <top (required)>'
这是我的“calculate_tax”方法中失败的行:
self.tax_rate = tax.rate
我需要做什么才能完成这项工作?
最佳答案
尝试调用函数 calculate_tax
并直接传入 tax
和 sub_category
助手而不是符号,如下所示:
subject.calculate_tax(tax, sub_category)
在这里查看文档和用法:Let and let!
关于ruby-on-rails - RSpec - NoMethodError 对于在关联模型上调用的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20181288/
我是一名优秀的程序员,十分优秀!