Sha256: 83f2fbea7e99b478a0599edccbba2f7db029ff04ba87b188d8d7530900ffb129

Contents?: true

Size: 769 Bytes

Versions: 4

Compression:

Stored size: 769 Bytes

Contents

require 'spec_helper'

describe '#rpop(key)' do
  before { @key = 'mock-redis-test:43093' }

  it 'returns and removes the first element of a list' do
    @redises.lpush(@key, 1)
    @redises.lpush(@key, 2)

    @redises.rpop(@key).should == '1'

    @redises.llen(@key).should == 1
  end

  it 'returns nil if the list is empty' do
    @redises.lpush(@key, 'foo')
    @redises.rpop(@key)

    @redises.rpop(@key).should be_nil
  end

  it 'returns nil for nonexistent values' do
    @redises.rpop(@key).should be_nil
  end

  it 'removes empty lists' do
    @redises.lpush(@key, 'foo')
    @redises.rpop(@key)

    @redises.get(@key).should be_nil
  end

  let(:default_error) { RedisMultiplexer::MismatchedResponse }
  it_should_behave_like 'a list-only command'
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
mock_redis-0.36.0 spec/commands/rpop_spec.rb
mock_redis-0.35.0 spec/commands/rpop_spec.rb
mock_redis-0.34.0 spec/commands/rpop_spec.rb
mock_redis-0.33.0 spec/commands/rpop_spec.rb