A test for AR::Base.inherited
Ensure that Kaminari does not conflict with other gems that extend the inherited hook
This commit is contained in:
parent
05ff5615fa
commit
0c354253a3
|
@ -1,4 +1,20 @@
|
|||
# Simulate a gem providing a subclass of ActiveRecord::Base before the Railtie is loaded.
|
||||
module Kaminari
|
||||
module FakeGem
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
class GemDefinedModel < ActiveRecord::Base
|
||||
module ClassMethods
|
||||
def inherited(kls)
|
||||
super
|
||||
def kls.fake_gem_defined_method; end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
ActiveSupport.on_load :active_record do
|
||||
ActiveRecord::Base.send :include, Kaminari::FakeGem
|
||||
|
||||
# Simulate a gem providing a subclass of ActiveRecord::Base before the Railtie is loaded.
|
||||
class GemDefinedModel < ActiveRecord::Base
|
||||
end
|
||||
end
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
require 'spec_helper'
|
||||
|
||||
if defined? ActiveRecord
|
||||
describe Kaminari::ActiveRecordModelExtension do
|
||||
subject { Class.new(ActiveRecord::Base) }
|
||||
it { should respond_to :page }
|
||||
it { should respond_to :fake_gem_defined_method }
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue