Skip to content

Commit 7513552

Browse files
authored
Merge pull request #402 from meilisearch/bump-meilisearch-v0.30.0-improve-query-handling
Add support to receive also DateTime instances as parameters
2 parents 390a7f6 + 42dc4ff commit 7513552

File tree

3 files changed

+17
-9
lines changed

3 files changed

+17
-9
lines changed

lib/meilisearch/utils.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def self.parse_query(original_options, allowed_params = [])
2828

2929
Utils.transform_attributes(only_allowed_params).then do |body|
3030
body.transform_values do |v|
31-
v.respond_to?(:join) ? v.join(',') : v
31+
v.respond_to?(:join) ? v.join(',') : v.to_s
3232
end
3333
end
3434
end

spec/meilisearch/client/tasks_spec.rb

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -185,21 +185,23 @@
185185

186186
describe '#client.delete_tasks' do
187187
it 'ensures supports to all available filters' do
188+
date = DateTime.new(2022, 01, 20)
189+
188190
allow(MeiliSearch::Utils).to receive(:transform_attributes).and_call_original
189191

190192
client.delete_tasks(
191193
canceled_by: [1, 2], uids: [2], foo: 'bar',
192-
before_enqueued_at: '2022-01-20', after_enqueued_at: '2022-01-20',
193-
before_started_at: '2022-01-20', after_started_at: '2022-01-20',
194-
before_finished_at: '2022-01-20', after_finished_at: '2022-01-20'
194+
before_enqueued_at: date, after_enqueued_at: date,
195+
before_started_at: date, after_started_at: date,
196+
before_finished_at: date, after_finished_at: date
195197
)
196198

197199
expect(MeiliSearch::Utils).to have_received(:transform_attributes)
198200
.with(
199201
canceled_by: [1, 2], uids: [2],
200-
before_enqueued_at: '2022-01-20', after_enqueued_at: '2022-01-20',
201-
before_started_at: '2022-01-20', after_started_at: '2022-01-20',
202-
before_finished_at: '2022-01-20', after_finished_at: '2022-01-20'
202+
before_enqueued_at: date, after_enqueued_at: date,
203+
before_started_at: date, after_started_at: date,
204+
before_finished_at: date, after_finished_at: date
203205
)
204206
end
205207

spec/meilisearch/utils_spec.rb

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,15 @@
99
end
1010

1111
it 'cleans list based on another list' do
12-
data = described_class.parse_query({ array: [1, 2, 3], other: 'string' }, [:array, :other])
12+
data = described_class.parse_query({ array: [1, 2, 3], ignore: 'string' }, [:array])
1313

14-
expect(data).to eq({ 'array' => '1,2,3', 'other' => 'string' })
14+
expect(data).to eq({ 'array' => '1,2,3' })
15+
end
16+
17+
it 'transforms dates into strings' do
18+
data = described_class.parse_query({ date: DateTime.new(2012, 12, 21, 19, 5) }, [:date])
19+
20+
expect(data).to eq({ 'date' => '2012-12-21T19:05:00+00:00' })
1521
end
1622
end
1723
end

0 commit comments

Comments
 (0)