Sha256: e27ad4a14eea0dd1ce820e123b4b0d5f89f62c432058e8acc55b20b6ec0e3a4d

Contents?: true

Size: 1.55 KB

Versions: 20

Compression:

Stored size: 1.55 KB

Contents

shared_examples_for 'a zset-only command' do
  it 'raises an error for non-zset values' do |example|
    key = 'mock-redis-test:zset-only'

    method = method_from_description(example)
    args = args_for_method(method).unshift(key)

    @redises.set(key, 1)
    lambda do
      @redises.send(method, *args)
    end.should raise_error(RuntimeError)
  end

  it_should_behave_like 'does not remove empty strings on error'
end

shared_examples_for 'arg 1 is a score' do
  before { @_arg_index = 1 }
  it_should_behave_like 'arg N is a score'
end

shared_examples_for 'arg 2 is a score' do
  before { @_arg_index = 2 }
  it_should_behave_like 'arg N is a score'
end

shared_examples_for 'arg N is a score' do
  before do |example|
    key = 'mock-redis-test:zset-only'

    @method = method_from_description(example)
    @args = args_for_method(@method).unshift(key)
  end

  it 'is okay with positive ints' do
    @args[@_arg_index] = 1
    lambda { @redises.send(@method, *@args) }.should_not raise_error
  end

  it 'is okay with negative ints' do
    @args[@_arg_index] = -1
    lambda { @redises.send(@method, *@args) }.should_not raise_error
  end

  it 'is okay with positive floats' do
    @args[@_arg_index] = 1.5
    lambda { @redises.send(@method, *@args) }.should_not raise_error
  end

  it 'is okay with negative floats' do
    @args[@_arg_index] = -1.5
    lambda { @redises.send(@method, *@args) }.should_not raise_error
  end

  it 'rejects non-numbers' do
    @args[@_arg_index] = 'foo'
    lambda { @redises.send(@method, *@args) }.should raise_error(RuntimeError)
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
mock_redis-0.36.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.35.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.34.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.33.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.32.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.31.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.30.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.29.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.28.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.27.3 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.27.2 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.27.1 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.27.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.26.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.25.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.24.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.23.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.22.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.21.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.20.0 spec/support/shared_examples/only_operates_on_zsets.rb