Sha256: 89ffee1453b1f90a37900126eba53da886e1dc9286d11be72bcc83feaac58cac

Contents?: true

Size: 1.14 KB

Versions: 3

Compression:

Stored size: 1.14 KB

Contents

require 'spec_helper'

describe Split::RedisInterface do
  let(:list_name) { 'list_name' }
  let(:set_name) { 'set_name' }
  let(:interface) { described_class.new }

  describe '#persist_list' do
    subject(:persist_list) do
      interface.persist_list(list_name, %w(a b c d))
    end

    specify do
      expect(persist_list).to eq %w(a b c d)
      expect(Split.redis.lindex(list_name, 0)).to eq 'a'
      expect(Split.redis.lindex(list_name, 1)).to eq 'b'
      expect(Split.redis.lindex(list_name, 2)).to eq 'c'
      expect(Split.redis.lindex(list_name, 3)).to eq 'd'
      expect(Split.redis.llen(list_name)).to eq 4
    end

    context 'list is overwritten but not deleted' do
      specify do
        expect(persist_list).to eq %w(a b c d)
        interface.persist_list(list_name, ['z'])
        expect(Split.redis.lindex(list_name, 0)).to eq 'z'
        expect(Split.redis.llen(list_name)).to eq 1
      end
    end
  end

  describe '#add_to_set' do
    subject(:add_to_set) do
      interface.add_to_set(set_name, 'something')
    end

    specify do
      add_to_set
      expect(Split.redis.sismember(set_name, 'something')).to be true
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
split-4.0.1 spec/redis_interface_spec.rb
split-4.0.0.pre2 spec/redis_interface_spec.rb
split-4.0.0.pre spec/redis_interface_spec.rb