【发布时间】:2021-03-10 10:43:01
【问题描述】:
我担心使用 Kaminari gem,但不知道如何测试它。我已经阅读了有关 share_examples 的信息,但似乎没有通过。
这是我的代码
module LoadMoreConcern
extend ActiveSupport::Concern
protected
def load_more(objects)
objects.present? ? !objects.last_page? : false
end
spec/controllers/concern/load_more_concern_spec.rb
require 'rails_helper'
RSpec.shared_examples 'LoadMoreConcern' do |klass|
describe '#load_more' do
let_it_be(:talk) { FactoryBot.create(:talk) }
it "should return false if object is not present or is last page" do
expect(subject.load_more(talk)).to be false
end
end
end
在我包含此问题的控制器中
require 'rails_helper'
RSpec.describe TalksController, type: :controller do
it_behaves_like 'LoadMoreConcern'
end
运行规范时出现此错误
An error occurred while loading ./spec/controllers/talks_controller_spec.rb.
Failure/Error: it_behaves_like 'LoadMoreConcern'
ArgumentError:
Could not find shared examples "LoadMoreConcern"
有人知道我应该做什么或可以指出一些资源吗?任何帮助表示感谢。
【问题讨论】:
标签: ruby-on-rails rspec rspec-rails