gpt4 book ai didi

ruby-on-rails - 规范通过所需的 attr_accessor

转载 作者:行者123 更新时间:2023-12-02 00:27:55 24 4
gpt4 key购买 nike

这可能与 this question 完全相反.考虑以下规范:

describe Record do
it "calculates the first term grade" do
test = stub(id: 1, final_grade: 20)
audition = stub(id: 1, final_grade: 20)
record = Record.create!({
first_term_knowledge: 15,
first_term_attitude: 10,
first_term_test_id: test.id,
first_term_audition_id: audition.id})

record.calculated_grade.should_not be_nil
end
end

Record 模型将所有这些属性迁移到数据库中。

规范失败,解释如下:

1) Record calculates the first term grade
Failure/Error: record = Record.create!({
ActiveRecord::UnknownAttributeError:
unknown attribute: first_term_knowledge
# ./spec/models/record_spec.rb:7:in `block (2 levels) in <top (required)>'

Rails 文档声明必须设置 attr_accessor 才能允许批量分配。我试过了,测试继续进行。然而,这是一个开发高峰期,事先没有进行任何测试,first_term_knowledge 已成功传递。

当生产代码已经可以在没有 attr_accessor 的情况下运行时,我应该如何进行测试?这是测试这个的错误方法吗?我应该为此使用模拟吗?

最佳答案

感谢Brett Bender回答这个问题,很棒!

rake db:test:prepare 是将整个模式加载到测试环境中所必需的。

关于ruby-on-rails - 规范通过所需的 attr_accessor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8159036/

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