From f4aeda428c8b5921571c7c48f175a1440af1c0bc Mon Sep 17 00:00:00 2001 From: Bilal Al-Shahwany Date: Wed, 23 Jul 2025 09:18:41 -0700 Subject: [PATCH 1/2] fix rbs repository --- .../cache/repositories/rule_based_segments_repository.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb b/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb index 79264b8f..e88b2c6f 100644 --- a/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb +++ b/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb @@ -85,7 +85,7 @@ def clear def contains?(segment_names) return false if rule_based_segment_names.empty? - return set(segment_names).subset?(rule_based_segment_names) + return Set.new(segment_names).subset?(rule_based_segment_names) end private From db909295a8ccb6b93471647b33dc0061fe20857b Mon Sep 17 00:00:00 2001 From: Bilal Al-Shahwany Date: Wed, 23 Jul 2025 09:32:25 -0700 Subject: [PATCH 2/2] added test --- .../cache/repositories/rule_based_segments_repository.rb | 3 ++- .../repositories/rule_based_segments_repository_spec.rb | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb b/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb index e88b2c6f..7f45e343 100644 --- a/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb +++ b/lib/splitclient-rb/cache/repositories/rule_based_segments_repository.rb @@ -85,7 +85,8 @@ def clear def contains?(segment_names) return false if rule_based_segment_names.empty? - return Set.new(segment_names).subset?(rule_based_segment_names) + + return segment_names.to_set.subset?(rule_based_segment_names.to_set) end private diff --git a/spec/cache/repositories/rule_based_segments_repository_spec.rb b/spec/cache/repositories/rule_based_segments_repository_spec.rb index a4e2b9ba..3fdd89ed 100644 --- a/spec/cache/repositories/rule_based_segments_repository_spec.rb +++ b/spec/cache/repositories/rule_based_segments_repository_spec.rb @@ -40,6 +40,11 @@ ) end + it 'contains' do + expect(repository.contains?(['foo', 'bar'].to_set)).to eq(true) + expect(repository.contains?(['foo', 'oof'].to_set)).to eq(false) + end + it 'remove undefined matcher with template condition' do rule_based_segment = { name: 'corge', trafficTypeName: 'tt_name_5', conditions: [ {