Sha256: bb4dc6623d8a68a9b8bff19fd0eb6853c3f5413ba339c51a9997d48b02867947

Contents?: true

Size: 911 Bytes

Versions: 17

Compression:

Stored size: 911 Bytes

Contents

require 'spec_helper'

describe "#lrange(key, start, stop)" do
  before do
    @key = 'mock-redis-test:68036'

    @redises.lpush(@key, 'v4')
    @redises.lpush(@key, 'v3')
    @redises.lpush(@key, 'v2')
    @redises.lpush(@key, 'v1')
    @redises.lpush(@key, 'v0')
  end

  it "returns a subset of the list inclusive of the right end" do
    @redises.lrange(@key, 0, 2).should == %w[v0 v1 v2]
  end

  it "returns an empty list when start > end" do
    @redises.lrange(@key, 3, 2).should == []
  end

  it "works with negative indices" do
    @redises.lrange(@key, 2, -1).should == %w[v2 v3 v4]
  end

  it "returns [] when run against a nonexistent value" do
    @redises.lrange("mock-redis-test:bogus-key", 0, 1).should == []
  end

  it "finds the end of the list correctly when end is too large" do
    @redises.lrange(@key, 4, 10).should == %w[v4]
  end

  it_should_behave_like "a list-only command"
end

Version data entries

17 entries across 17 versions & 2 rubygems

Version Path
mock_redis-0.5.4 spec/commands/lrange_spec.rb
mock_redis-0.5.3 spec/commands/lrange_spec.rb
mock_redis-0.5.2 spec/commands/lrange_spec.rb
mock_redis-0.5.1 spec/commands/lrange_spec.rb
mock_redis-0.5.0 spec/commands/lrange_spec.rb
mock_redis-0.4.1 spec/commands/lrange_spec.rb
mock_redis-0.4.0 spec/commands/lrange_spec.rb
mock_redis-0.3.0 spec/commands/lrange_spec.rb
ryansch-mock_redis-0.3.0 spec/commands/lrange_spec.rb
ryansch-mock_redis-0.2.0.2 spec/commands/lrange_spec.rb
ryansch-mock_redis-0.2.0.1 spec/commands/lrange_spec.rb
mock_redis-0.2.0 spec/commands/lrange_spec.rb
mock_redis-0.1.2 spec/commands/lrange_spec.rb
mock_redis-0.1.1 spec/commands/lrange_spec.rb
mock_redis-0.1.0 spec/commands/lrange_spec.rb
mock_redis-0.0.2 spec/commands/lrange_spec.rb
mock_redis-0.0.1 spec/commands/lrange_spec.rb