diff options
Diffstat (limited to 'spec/lib/gitlab/repository_set_cache_spec.rb')
-rw-r--r-- | spec/lib/gitlab/repository_set_cache_spec.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/spec/lib/gitlab/repository_set_cache_spec.rb b/spec/lib/gitlab/repository_set_cache_spec.rb index 07f4d7c462d..eaecbb0233d 100644 --- a/spec/lib/gitlab/repository_set_cache_spec.rb +++ b/spec/lib/gitlab/repository_set_cache_spec.rb @@ -124,6 +124,18 @@ RSpec.describe Gitlab::RepositorySetCache, :clean_gitlab_redis_cache do end end + describe '#search' do + subject do + cache.search(:foo, 'val*') do + %w[value helloworld notvalmatch] + end + end + + it 'returns search pattern matches from the key' do + is_expected.to contain_exactly('value') + end + end + describe '#include?' do it 'checks inclusion in the Redis set' do cache.write(:foo, ['value']) @@ -132,4 +144,15 @@ RSpec.describe Gitlab::RepositorySetCache, :clean_gitlab_redis_cache do expect(cache.include?(:foo, 'bar')).to be(false) end end + + describe '#try_include?' do + it 'checks existence of the redis set and inclusion' do + expect(cache.try_include?(:foo, 'value')).to eq([false, false]) + + cache.write(:foo, ['value']) + + expect(cache.try_include?(:foo, 'value')).to eq([true, true]) + expect(cache.try_include?(:foo, 'bar')).to eq([false, true]) + end + end end |