ru.Bee 2.7.16 → 2.7.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/db/test.db +0 -0
- data/lib/rubee/models/assoc_array.rb +5 -2
- data/lib/rubee/models/sequel_object.rb +3 -1
- data/lib/rubee.rb +1 -1
- data/lib/tests/models/comment_model_test.rb +21 -0
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 01a7357826a17d0689fadebdf99357cf7ad50b38ec612f397260cb8580cd5291
|
|
4
|
+
data.tar.gz: 2481e8249b9a035d2095af11d8fbc8c8f410fe9711e144fd190cc5c1e167d188
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 82c9964621101a59769a73747527fa0fda93ff60d691c6d3d75dbf40917463517446073a71622e058c6f15fe7cbfaa736b117c26d75c92b71cbbcd2e3bcf4808
|
|
7
|
+
data.tar.gz: ea3d93e87f2f8ef4dfd6350f5db386ca906d33aa79c000fcb8954df1d7ab7614de8b4f9b91e2c5c16dba25316f78b06f1998799b61d082b08561e19d407c505d
|
data/lib/db/test.db
CHANGED
|
Binary file
|
|
@@ -53,14 +53,17 @@ module Rubee
|
|
|
53
53
|
def paginate(*args)
|
|
54
54
|
total_count = @__query_dataset.count
|
|
55
55
|
current_page, per_page = args
|
|
56
|
+
total_pages = per_page.to_i > 0 ? (total_count / per_page.to_f).ceil : 1
|
|
57
|
+
current_page = current_page.to_i > 0 ? current_page.to_i : 1
|
|
58
|
+
per_page = per_page.to_i > 0 ? per_page.to_i : 10
|
|
56
59
|
__pagination_meta = {
|
|
57
60
|
current_page:,
|
|
58
61
|
per_page:,
|
|
59
62
|
total_count:,
|
|
60
63
|
first_page: current_page == 1,
|
|
61
|
-
last_page: current_page ==
|
|
64
|
+
last_page: current_page == total_pages,
|
|
62
65
|
prev: current_page > 1 ? current_page - 1 : nil,
|
|
63
|
-
next: current_page <
|
|
66
|
+
next: current_page < total_pages ? current_page + 1 : nil,
|
|
64
67
|
}
|
|
65
68
|
|
|
66
69
|
@__model.paginate(*args, __query_dataset: @__query_dataset, __pagination_meta:)
|
|
@@ -178,7 +178,7 @@ module Rubee
|
|
|
178
178
|
return unless db_set?
|
|
179
179
|
|
|
180
180
|
DB.disconnect
|
|
181
|
-
|
|
181
|
+
remove_const(:DB)
|
|
182
182
|
end
|
|
183
183
|
|
|
184
184
|
def force_reconnect!
|
|
@@ -266,6 +266,8 @@ module Rubee
|
|
|
266
266
|
|
|
267
267
|
def paginate(page = 1, per_page = 10, options = {})
|
|
268
268
|
query_dataset = options[:__query_dataset] || dataset
|
|
269
|
+
page = page.to_i > 0 ? page.to_i : 1
|
|
270
|
+
per_page = per_page.to_i > 0 ? per_page.to_i : 10
|
|
269
271
|
offset = (page - 1) * per_page
|
|
270
272
|
|
|
271
273
|
::Rubee::AssocArray.new([], self, query_dataset.offset(offset).limit(per_page),
|
data/lib/rubee.rb
CHANGED
|
@@ -116,6 +116,27 @@ describe 'Comment model' do
|
|
|
116
116
|
)
|
|
117
117
|
Comment.destroy_all
|
|
118
118
|
end
|
|
119
|
+
|
|
120
|
+
describe 'when pass page number as zero' do
|
|
121
|
+
it 'returns target records' do
|
|
122
|
+
Comment.destroy_all cascade: true
|
|
123
|
+
10.times do |n|
|
|
124
|
+
Comment.new(text: "test_#{n}").save
|
|
125
|
+
end
|
|
126
|
+
comments = Comment.all.paginate(0, 5)
|
|
127
|
+
_(comments.count).must_equal(5)
|
|
128
|
+
_(comments.pagination_meta).must_equal(
|
|
129
|
+
current_page: 1,
|
|
130
|
+
per_page: 5,
|
|
131
|
+
total_count: 10,
|
|
132
|
+
first_page: true,
|
|
133
|
+
last_page: false,
|
|
134
|
+
prev: nil,
|
|
135
|
+
next: 2
|
|
136
|
+
)
|
|
137
|
+
Comment.destroy_all
|
|
138
|
+
end
|
|
139
|
+
end
|
|
119
140
|
end
|
|
120
141
|
end
|
|
121
142
|
|