Skip to content

Commit a7cdd5b

Browse files
[CHA-0] Fix QueryReminders to use filter parameter and improve test assertions (#186)
* feat: Fix QueryReminders to use filter parameter instead of filter_conditions * feat: Improve QueryReminders tests to verify filter results actually match criteria
1 parent 681fc1d commit a7cdd5b

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

lib/stream-chat/client.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1058,7 +1058,7 @@ def delete_reminder(message_id, user_id)
10581058
sig { params(user_id: String, filter_conditions: T::Hash[T.untyped, T.untyped], sort: T.nilable(T::Array[T::Hash[T.untyped, T.untyped]]), options: T.untyped).returns(StreamChat::StreamResponse) }
10591059
def query_reminders(user_id, filter_conditions = {}, sort: nil, **options)
10601060
params = options.merge({
1061-
filter_conditions: filter_conditions,
1061+
filter: filter_conditions,
10621062
sort: sort || [{ field: 'remind_at', direction: 1 }],
10631063
user_id: user_id
10641064
})

spec/client_spec.rb

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1342,9 +1342,25 @@ def loop_times(times)
13421342
expect(response['reminders']).to be_an(Array)
13431343
expect(response['reminders'].length).to be >= 1
13441344

1345-
# All reminders should have a channel_cid
1345+
# All reminders should have a channel_cid that matches the filter
13461346
response['reminders'].each do |reminder|
13471347
expect(reminder).to include('channel_cid')
1348+
expect(reminder['channel_cid']).to eq(@channel.cid)
1349+
end
1350+
end
1351+
1352+
it 'query reminders with message_id filter' do
1353+
# Query reminders for a specific message
1354+
filter = { 'message_id' => @message_id }
1355+
response = @client.query_reminders(@user_id, filter)
1356+
1357+
expect(response).to include('reminders')
1358+
expect(response['reminders']).to be_an(Array)
1359+
expect(response['reminders'].length).to be >= 1
1360+
1361+
# All reminders should have the filtered message_id
1362+
response['reminders'].each do |reminder|
1363+
expect(reminder['message_id']).to eq(@message_id)
13481364
end
13491365
end
13501366
end

0 commit comments

Comments
 (0)