gpt4 book ai didi

ruby-on-rails - Rspec:让不工作

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

我有一些 Rspec 测试,其中我使用 let 初始化变量:

  describe 'methods' do

let(:order) { Order.new }
let(:event_1) { FactoryGirl.create(:event) }
let(:event_2) { FactoryGirl.create(:event) }

context 'should checks if any event is paid' do
order.events << event_1
order.events << event_2
order.events_paid?.should == true
end

context 'should write aasm state' do
order.aasm_write_state('new')
order.state.CanonicalName.should == 'new'
end

end

但我得到一个错误 'method_missing': 'order' 在示例组中不可用(例如 'describe' 或 'context' block )。它仅在单个示例(例如“it” block )或在示例范围内运行的构造(例如“before”、“le”等)中可用。 (RSpec::Core::ExampleGroup::WrongScopeError)

为什么 let 初始化不起作用?

最佳答案

我看到两个错误:

  • 您还没有将测试包装在 it block 中 (!)

  • 您尝试将事件与 order 相关联,但 order 没有持久化


旁注,现在约定使用以下语法:

expect(order.events_paid?).to be true

关于ruby-on-rails - Rspec:让不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30460486/

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