Commit 0b8db094623977b60ff51bb74221624e74c16adf

Authored by Andrew Kane
1 parent b07e9388

Fixed pagination [skip ci]

lib/searchkick/relation.rb
... ... @@ -50,8 +50,12 @@ module Searchkick
50 50 self
51 51 end
52 52  
53   - def offset(value)
54   - spawn.offset!(value)
  53 + def offset(*args)
  54 + if args.empty?
  55 + execute.offset
  56 + else
  57 + spawn.offset!(*args)
  58 + end
55 59 end
56 60  
57 61 def offset!(value)
... ... @@ -94,8 +98,12 @@ module Searchkick
94 98 self
95 99 end
96 100  
97   - def per_page(value)
98   - spawn.per_page!(value)
  101 + def per_page(*args)
  102 + if args.empty?
  103 + execute.per_page
  104 + else
  105 + spawn.per_page!(*args)
  106 + end
99 107 end
100 108  
101 109 def per_page!(value)
... ... @@ -103,8 +111,12 @@ module Searchkick
103 111 self
104 112 end
105 113  
106   - def padding(value)
107   - spawn.padding!(value)
  114 + def padding(*args)
  115 + if args.empty?
  116 + execute.padding
  117 + else
  118 + spawn.padding!(*args)
  119 + end
108 120 end
109 121  
110 122 def padding!(value)
... ...
test/pagination_test.rb
... ... @@ -49,8 +49,8 @@ class PaginationTest < Minitest::Test
49 49 assert_equal ["Product D", "Product E"], products.map(&:name)
50 50 assert_equal "product", products.entry_name
51 51 assert_equal 2, products.current_page
52   - # assert_equal 1, products.padding
53   - # assert_equal 2, products.per_page
  52 + assert_equal 1, products.padding
  53 + assert_equal 2, products.per_page
54 54 assert_equal 2, products.size
55 55 assert_equal 2, products.length
56 56 assert_equal 3, products.total_pages
... ... @@ -58,7 +58,7 @@ class PaginationTest < Minitest::Test
58 58 assert_equal 6, products.total_entries
59 59 assert_equal 2, products.limit_value
60 60 assert_equal 3, products.offset_value
61   - # assert_equal 3, products.offset
  61 + assert_equal 3, products.offset
62 62 assert_equal 3, products.next_page
63 63 assert_equal 1, products.previous_page
64 64 assert_equal 1, products.prev_page
... ...