Sha256: 7877927e1b1fc07b8570b1db72ec683c64f877038470e0c005d28f2016b72494

Contents?: true

Size: 1.04 KB

Versions: 10

Compression:

Stored size: 1.04 KB

Contents

require 'spec_helper'

describe "#select(db)" do
  before { @key = 'mock-redis-test:select' }

  it "returns 'OK'" do
    @redises.select(0).should == 'OK'
  end

  it "treats '0' and 0 the same" do
    @redises.select('0')
    @redises.set(@key, 'foo')
    @redises.select(0)
    @redises.get(@key).should == 'foo'
  end

  it "switches databases" do
    @redises.select(0)
    @redises.set(@key, 'foo')

    @redises.select(1)
    @redises.get(@key).should be_nil

    @redises.select(0)
    @redises.get(@key).should == 'foo'
  end

  context "[mock only]" do
    # Time dependence introduces a bit of nondeterminism here
    before do
      @now = Time.now
      Time.stub!(:now).and_return(@now)

      @mock = @redises.mock

      @mock.select(0)
      @mock.set(@key, 1)
      @mock.expire(@key, 101)

      @mock.select(1)
      @mock.set(@key, 2)
      @mock.expire(@key, 201)
    end

    it "keeps expire times per-db" do
      @mock.select(0)
      @mock.ttl(@key).should == 100

      @mock.select(1)
      @mock.ttl(@key).should == 200
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
mock_redis-0.3.0 spec/commands/select_spec.rb
ryansch-mock_redis-0.3.0 spec/commands/select_spec.rb
ryansch-mock_redis-0.2.0.2 spec/commands/select_spec.rb
ryansch-mock_redis-0.2.0.1 spec/commands/select_spec.rb
mock_redis-0.2.0 spec/commands/select_spec.rb
mock_redis-0.1.2 spec/commands/select_spec.rb
mock_redis-0.1.1 spec/commands/select_spec.rb
mock_redis-0.1.0 spec/commands/select_spec.rb
mock_redis-0.0.2 spec/commands/select_spec.rb
mock_redis-0.0.1 spec/commands/select_spec.rb