File tree Expand file tree Collapse file tree 4 files changed +41
-1
lines changed Expand file tree Collapse file tree 4 files changed +41
-1
lines changed Original file line number Diff line number Diff line change 6
6
gem 'kaminari' , require : false
7
7
gem 'will_paginate' , require : false
8
8
9
+ gem 'sqlite3' , require : false
10
+ gem 'sequel' , require : false
11
+
9
12
gem 'rake' , require : false
10
13
gem 'coveralls' , require : false
Original file line number Diff line number Diff line change @@ -20,4 +20,6 @@ Gem::Specification.new do |s|
20
20
s . add_development_dependency 'grape'
21
21
s . add_development_dependency 'railties' , '>= 3.0.0'
22
22
s . add_development_dependency 'actionpack' , '>= 3.0.0'
23
+ s . add_development_dependency 'sqlite3'
24
+ s . add_development_dependency 'sequel' , '>= 4.9.0'
23
25
end
Original file line number Diff line number Diff line change @@ -14,7 +14,11 @@ def paginate(collection, options = {})
14
14
collection = Kaminari . paginate_array ( collection ) if collection . is_a? ( Array )
15
15
collection . page ( options [ :page ] ) . per ( options [ :per_page ] )
16
16
when :will_paginate
17
- collection . paginate ( :page => options [ :page ] , :per_page => options [ :per_page ] )
17
+ if defined? ( Sequel ::Dataset ) && collection . kind_of? ( Sequel ::Dataset )
18
+ collection . paginate ( options [ :page ] , options [ :per_page ] )
19
+ else
20
+ collection . paginate ( :page => options [ :page ] , :per_page => options [ :per_page ] )
21
+ end
18
22
end
19
23
end
20
24
Original file line number Diff line number Diff line change
1
+ require 'spec_helper'
2
+
3
+ if ApiPagination . paginator == :will_paginate
4
+ require 'sqlite3'
5
+ require 'sequel'
6
+ require 'will_paginate/sequel'
7
+
8
+ DB = Sequel . sqlite
9
+ DB . extension :pagination
10
+ DB . create_table :people do
11
+ primary_key :id
12
+ String :name
13
+ end
14
+
15
+ describe 'Using will_paginate with Sequel' do
16
+ let ( :people ) do
17
+ DB [ :people ]
18
+ end
19
+
20
+ before ( :each ) do
21
+ people . insert ( name : 'John' )
22
+ people . insert ( name : 'Mary' )
23
+ end
24
+
25
+ it 'returns a Sequel::Dataset' do
26
+ collection = ApiPagination . paginate ( people )
27
+ expect ( collection . kind_of? ( Sequel ::Dataset ) ) . to be_true
28
+ end
29
+ end
30
+ end
31
+
You can’t perform that action at this time.
0 commit comments