Sha256: f91388d66dfc901e0693b796f3299b5e479b69f77514cef44443ef87df6a452f

Contents?: true

Size: 682 Bytes

Versions: 7

Compression:

Stored size: 682 Bytes

Contents

require_relative './client_helper.rb'

describe "standard_client_tcp", adapter: :Client do
  include_context :start_server, port: 9003, backend: ->{ Moneta::Adapters::Memory.new }

  moneta_store :Client, port: 9003
  moneta_specs STANDARD_SPECS.with_each_key

  it 'supports multiple clients' do
    store['shared_key'] = 'shared_val'
    threads = (1..32).map do |i|
      Thread.new do
        client = new_store
        (1..31).each do |j|
          client['shared_key'].should == 'shared_val'
          client["key-\#{j}-\#{i}"] = "val-\#{j}-\#{i}"
          client["key-\#{j}-\#{i}"].should == "val-\#{j}-\#{i}"
        end
      end
    end
    threads.map(&:join)
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
moneta-1.5.2 spec/moneta/adapters/client/standard_client_tcp_spec.rb
moneta-1.5.1 spec/moneta/adapters/client/standard_client_tcp_spec.rb
moneta-1.5.0 spec/moneta/adapters/client/standard_client_tcp_spec.rb
moneta-1.4.2 spec/moneta/adapters/client/standard_client_tcp_spec.rb
moneta-1.4.1 spec/moneta/adapters/client/standard_client_tcp_spec.rb
moneta-1.4.0 spec/moneta/adapters/client/standard_client_tcp_spec.rb
moneta-1.3.0 spec/moneta/adapters/client/standard_client_tcp_spec.rb