Sha256: 24290b1122b00069f954f65e308907b1bb4478d28f5eb84d4cc5a415c1311169

Contents?: true

Size: 1.02 KB

Versions: 58

Compression:

Stored size: 1.02 KB

Contents

require 'redis'
$:.unshift File.join(File.dirname(__FILE__),'..','..','..','lib')
require 'rhoconnect'
include Rhoconnect
  
module Bench
  class MockClient
    include Logging
        
    def initialize(thread_id,iteration,client_id)
      @thread_id,@iteration,@client_id = thread_id,iteration,client_id
    end
    
    def parse(message)
      msg = JSON.parse(message)
      raise Exception.new("#{log_prefix} Wrong message format. Message: #{message.inspect}") if msg.size < 6
      raise Exception.new("#{log_prefix} Wrong protocol version. Message: #{message.inspect}") if msg[0]['version'] != 3
      msg.each do |p|
        insert(p['insert']) if p['insert']
        delete(p['delete']) if p['delete']
      end
    end
    
    def insert(objects)
      Store.put_data(doc_type,objects,true)
    end
    
    def delete(objects)
      Store.delete_data(doc_type,objects)
    end
  
    def verify(objects)
      Store.get_data(doc_type) == objects
    end
      
    def doc_type
      "#{@client_id.to_s}:mock:cd"
    end  

  end
end

Version data entries

58 entries across 58 versions & 1 rubygems

Version Path
rhoconnect-7.6.0 bench/lib/bench/mock_client.rb
rhoconnect-7.5.1 bench/lib/bench/mock_client.rb
rhoconnect-7.4.1 bench/lib/bench/mock_client.rb
rhoconnect-7.1.17 bench/lib/bench/mock_client.rb
rhoconnect-6.2.0 bench/lib/bench/mock_client.rb
rhoconnect-6.0.11 bench/lib/bench/mock_client.rb
rhoconnect-5.5.18 bench/lib/bench/mock_client.rb
rhoconnect-5.5.17 bench/lib/bench/mock_client.rb
rhoconnect-5.5.15 bench/lib/bench/mock_client.rb
rhoconnect-5.5.0.22 bench/lib/bench/mock_client.rb
rhoconnect-5.5.2 bench/lib/bench/mock_client.rb
rhoconnect-5.5.0.7 bench/lib/bench/mock_client.rb
rhoconnect-5.5.0.3 bench/lib/bench/mock_client.rb
rhoconnect-5.5.0 bench/lib/bench/mock_client.rb
rhoconnect-5.1.1 bench/lib/bench/mock_client.rb
rhoconnect-4.0.4 bench/lib/bench/mock_client.rb
rhoconnect-4.0.3 bench/lib/bench/mock_client.rb
rhoconnect-4.0.2 bench/lib/bench/mock_client.rb
rhoconnect-4.0.1 bench/lib/bench/mock_client.rb
rhoconnect-4.0.0 bench/lib/bench/mock_client.rb