Sha256: 96e0511857ae69354fdd5b0c3236c7b642d86784f53fce8bf0d1e5fd1e92b60a

Contents?: true

Size: 1.45 KB

Versions: 20

Compression:

Stored size: 1.45 KB

Contents

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

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

    @redises.set(key, 1)
    lambda do
      @redises.send(method, *args)
    end.should raise_error(RuntimeError)
  end
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
    key = 'mock-redis-test:zset-only'

    @method = method_from_description
    @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.13.2 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.13.1 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.13.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.12.1 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.12.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.11.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.10.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.9.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.8.2 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.8.1 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.8.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.7.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.6 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.5 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.4 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.3 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.2 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.1 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.6.0 spec/support/shared_examples/only_operates_on_zsets.rb
mock_redis-0.5.5 spec/support/shared_examples/only_operates_on_zsets.rb